머리말
이 책의 사용법
부록 다운로드
Chapter 1. 수와 연산
1.1 실수형 자료 사용의 위험성
01 실수형 자료의 저장 방식
02 부동소수점과 고정소수점의 비교
03 실수형 자료의 주의점
1.2 형 변환 시 주의점
1.3 무부호형(Unsigned Type) 사용 시 주의점
01 보수 표현법
02 무부호형 사용 시 문제점
1.4 비트 연산 시 주의점
01 이동(Shift) 연산
02 산술 이동(Arithmetic Shift)과 논리 이동(Logical Shift)
03 이동 연산의 장점과 주의점
1.5 변수의 범위
01 문자형의 overflow
02 실수형의 overflow
1.6 나눗셈의 주의 사항
01 0으로 나누기(Division by Zero)
02 0.0으로 나누기
1.7 증감 연산자 사용 시 주의 사항
01 일반 덧셈 연산 과정
02 증감 연산자
1.8 난수는 난수가 아니다
01 난수의 생성
02 난수표
03 난수의 활용
Chapter 2. 함수
2.1 함수의 반환값
01 인자를 통한 실행 정보의 입력
02 함수의 리턴값 재고
2.2 반환값을 활용하자
01 반환값 활용 예제
2.3 프로그램 수행 시 메모리의 구조
01 메모리 구조
02 변수의 종류
2.4 Call by Value vs Call by Reference
01 함수 인자의 전달 방법
02 피보나치(Fibonacci)
03 하노이(Fibonacci) 탑
2.5 x86 함수 호출 규약(비표준)
01 Cdecl(C declaration)
02 Stdcall
03 Fastcall
Chapter 3. 포인터
3.1 함수로의 인자 전달
3.2 배열과 포인터의 관계
01 배열의 구조
02 문자열
03 포인터와 배열의 차이
04 Strcpy( ) 함수
3.3 다차원 배열과 포인터
01 배열의 선형성
02 포인터 배열
3.4 함수 포인터
01 인자가 없는 함수 포인터
02 인자가 있는 함수 포인터
03 qsort( ) 함수
3.5 포인터 쉽게 사용하기
3.6 잘못된 포인터의 사용
01 허상 포인터(Darling Pointer)
02 와일드 포인터(Wild Pointer)
03 허상 포인터 방어
Chapter 4. 입출력(I/O)
4.1 컴퓨터의 I/O 처리 과정
4.2 컴퓨터 구동 환경에서 자료형의 기록 방식
01 엔디언(Endian)
02 개행 문자(한 줄 띄어쓰기)
4.3 여러 가지 입출력 환경
01 표준 입출력
02 통신 네트워크 I/O
4.4 텍스트 모드와 바이너리 모드
4.5 파일 입출력 프로그램 작성 시 자주하는 실수
4.6 파일 입출력 에러 핸들링 방법
4.7 I/O 성능 개선 방법
Chapter 5. 기타 프로그래밍 팁
5.1 반복문의 종류
01 반복문의 종류
02 반복문 사용 시 주의점
03 반복문의 성능 개선
04 goto 문 활용
5.2 매크로 사용 상의 주의점
01 매크로 사용 시 주의점
02 내장 매크로
5.3 if 문 사용 시 주의점
01 if 문의 조건식 판단 순서
02 if 문의 중첩
5.4 메모리 패딩(Padding)
01 패딩이란?
02 패딩을 사용하는 이유
5.5 디버깅 팁
01 debugbreak( ) 함수
부록
- 아스키코드 표
- 유니코드 한글모음
- 찾아보기