목차
1장 C언어란? ... 1
   1. C언어의 소개 ... 1
   2. 컴퓨터 시스템과 C언어 사용 환경 ... 3
      2.1 컴퓨터 시스템의 구성 ... 3
      2.2 입출력 버퍼링(I/O Buffering) ... 4
      2.3 컴파일과 실행 ... 4
   3. C언어의 구조 ... 6
      3.1 main( ) 함수 ... 7
      3.2 중괄호, 설명문, 변수명 ... 8
      3.3 간단한 예 ... 9
   연습문제 ... 13
2장 데이터 형(TYPE) ... 15
   1. 데이터의 형태 ... 15
   2. 정수형 : int ... 16
   3. 실수형 : float ... 19
   4. 문자형 : char ... 21
   5. void형과 열거형 ... 22
   6. typedef형 ... 23
   7. 형의 변환(Type Conversion) ... 23
   8. 상수 : constant ... 25
      8.1 정수 데이터 유형의 상수 ... 25
      8.2 실수 데이터 유형의 상수 ... 27
      8.3 문자 데이터 유형의 상수 ... 27
      8.4 문자열 상수 ... 28
   9. 변수의 선언 ... 30
   10. 초기값 지정 ... 31
   연습문제 ... 33
3장 기본 입ㆍ출력 ... 35
   1. 기본 출력 ... 36
      1.1 정수 데이터 유형의 출력 ... 36
      1.2 실수 데이터 유형의 출력 ... 39
      1.3 문자 데이터 유형의 출력 ... 41
      1.4 Putchar를 이용한 문자 데이터 유형의 출력 ... 43
   2. 기본 입력 ... 44
      2.1 정수 데이터 유형의 입력 ... 44
      2.2 실수 데이터 유형의 입력 ... 50
      2.3 문자 데이터 유형의 입력 ... 54
      2.4 getchar를 이용한 문자 데이터 유형의 입력 ... 60
   연습문제 ... 64
4장 연산자 ... 65
   1. 산술연산자(Arithmetic operator) ... 66
      1.1 대입연산자 ... 66
      1.2 이항연산자 ... 67
      1.3 단항연산자 ... 69
      1.4 산술연산자의 우선순위 ... 72
      1.5 할당연산자 ... 73
   2. 관계연산자 ... 75
   3. 논리연산자 ... 78
   4. 형변환연산자(CAST연산자) ... 82
   5. 부호 확장(sign extension)과 0 확장(zero extension) ... 83
   6. 기타 연산자 ... 84
      6.1 조건 연산자 ... 84
      6.2 비트 단위 연산자 ... 86
      6.3 산술 쉬프트와 논리 쉬프트 ... 90
      6.4 비트 단위의 연산자의 응용 ... 92
      6.5 콤마 연산자 ... 93
      6.6 sizeof 연산자 ... 95
   연습문제 ... 98
5장 제어문 ... 101
   1. 제어문의 사용 ... 101
   2. 조건문 : if∼문 ... 102
   3. while문과 do-while문 ... 112
   4. for문 ... 120
   5. switch문과 break문 ... 126
   6. exit, continue와 goto문 ... 131
   연습문제 ... 137
6장 함수(Function) ... 139
   1. 함수의 정의와 호출 ... 143
      1.1 함수의 정의 ... 143
      1.2 함수의 호출 ... 146
   2. 함수와 서브루틴 ... 152
   3. RETURN 문 ... 157
   4. 인자의 전달 ... 165
   5. 함수의 선언 ... 167
   6. 함수의 호출(call function) ... 170
      6.1 값에 의한 호출(call by value) ... 172
      6.2 주소에 의한 호출(call by reference) ... 177
      6.3 재귀 호출(recursive function call) ... 190
   7. 수학함수 ... 195
   연습문제 ... 198
7장 변수의 기억 클래스 ... 201
   1. 자동 변수(Auto variable) ... 202
   2. 정적 변수(Static variable) ... 207
      2.1 외부 정적 변수(external static variable) ... 212
      2.2 내부 정적 변수(internal static variable) ... 214
   3. 외부 변수(External variable) ... 215
   4. 레지스터 변수(Register variable) ... 226
   5. 함수와 기억장소 종류의 관계 ... 229
      5.1 저장 공간 할당 ... 229
      5.2 유효범위 규칙(scope rule) ... 230
   연습문제 ... 232
8장 배열(Array) ... 233
   1. 배열 ... 233
   2. 1차원 배열 ... 236
   3. 다차원 배열 ... 241
   4. 배열과 포인터 ... 245
   5. 일차원 배열의 인자 전달 ... 250
   6. 배열과 문자열(스트링) ... 254
   7. 다차원 배열의 인자 전달 ... 256
   8. 포인터 배열 ... 259
   9. 이중 포인터 ... 263
   10. void형 포인터 ... 266
   11. 함수 포인터 ... 267
   연습문제 ... 270
9장 포인터(Pointer) ... 271
   1. 포인터 변수의 정의 ... 272
   2. '&' 연산자 ... 273
   3. '*' 연산자 ... 277
   4. 포인터를 이용한 참조에 의한 호출 ... 281
   5. 포인터 연산 ... 286
   6. 포인터와 배열 ... 289
   7. 다중 Pointer ... 311
   연습문제 ... 312
10장 구조체와 공용체 ... 313
   1. 구조체(Structure) ... 313
      1.1 구조체의 개념 ... 313
      1.2 구조체의 선언 및 사용 ... 314
      1.3 구조 데이터 유형의 메모리 할당 ... 318
      1.4 구조체와 포인터 ... 326
      1.5 중첩된 구조 ... 329
      1.6 비트필드(Bit-field) 구조체 ... 330
   2. 공용체(union) ... 334
   연습문제 ... 339
11장 전처리기 ... 341
   1. define 문 ... 342
      1.1 매크로 함수 ... 345
      1.2 SWAP 함수 ... 349
   2. include 문 ... 350
   3. undef 문 ... 352
   4. if, elif, else, endif, ifdef, ifndef 문 ... 353
   5. 기타 전처리기 ... 358
      5.1 line 문 ... 358
      5.2 error 문 ... 360
   6. 그 밖의 기능 ... 361
      6.1 typedef 문 ... 361
      6.2 열거 데이터 유형(enumeration data type) ... 363
      6.3 volatile과 const 지시어 ... 366
   연습문제 ... 368
12장 파일 입출력 ... 369
   1. 파일 입출력 함수 ... 371
      1.1 fopen( ) 함수 : file open ... 371
      1.2 fclose( ) : file close ... 378
      1.3 fscanf( ) : file scanf ... 379
      1.4 fputc( ) : file put character ... 381
      1.5 fgetc( ) : file get character ... 383
      1.6 fgets( ) : file get string ... 385
      1.7 fputs( ) : file put string ... 388
      1.8 fseek( ) : file seek ... 391
      1.9 fread( ) : file read ... 394
      1.10 fwrite( ) : file write ... 396
   2. 파일로의 출력 ... 396
      2.1 텍스트 파일의 작성 ... 396
      2.2 이진 파일의 작성 ... 398
   3. 파일의 내용 수정 ... 399
   연습문제 ... 401
부록 ... 403
   부록 A. ASCII 문자 ... 403
   부록 B. C Reference Card(ANSI) ... 409
찾아보기 ... 421
닫기