목차 일부
Chapter 1 C/C++ 언어의 개요
1. C 언어의 역사 ... 15
2. C 언어의 개요 ... 15
프로그래밍 언어의 발전 과정 ... 15
C 언어의 특징 ... 17
C를 사용하는 이유 ... 18
3. 절차지향 언어와 객체지향 언어 ... 19
절차지향 언어 ... 19
객...
더보기
목차 전체
Chapter 1 C/C++ 언어의 개요
1. C 언어의 역사 ... 15
2. C 언어의 개요 ... 15
프로그래밍 언어의 발전 과정 ... 15
C 언어의 특징 ... 17
C를 사용하는 이유 ... 18
3. 절차지향 언어와 객체지향 언어 ... 19
절차지향 언어 ... 19
객체지향 언어 ... 20
캡슐화 ... 21
4. C++ 언어의 개발 환경 ... 21
C++ 언어는 어떻게 발전해 왔는가? ... 21
C++ 언어의 특징 ... 22
C++ 언어의 기능 ... 22
C++와 C의 몇 가지 차이점 ... 23
5. 프로그램의 구조 ... 24
C/C++ 프로그램의 구성 요소 ... 24
헤더 파일(header file) ... 26
사용자 정의 헤더 파일 ... 26
원시 파일(source file) ... 27
6. C++ 언어의 작성과 컴파일 ... 27
명령 라인 방식 ... 28
통합 개발 환경 ... 28
프로그램 작성 규칙 ... 29
C++ 언어의 대표적인 특성 ... 29
7. Dev-C++ 컴파일러 ... 30
Dev-C++ 설치하기 ... 30
Dev-C++를 이용하여 프로그램 코드 작성과 컴파일하기 ... 33
8. 진단 메시지 ... 37
연습문제 ... 39
Chapter 2 자료형
1. 자료형의 종류 ... 41
2. 메모리 ... 43
컴퓨터 메모리 ... 43
메모리의 구조 ... 43
3. 변수 ... 44
변수의 선언 ... 44
변수명 작성 원리 ... 44
변수의 종류 ... 45
4. 상수 ... 50
정수형 상수 ... 51
실수형 상수 ... 51
문자형 상수 ... 52
문자열형 상수 ... 54
나열형 상수 ... 57
5. typedef ... 58
연습문제 ... 59
Chapter 3 C/C++의 입출력
1. C 언어의 표준 입출력 함수 ... 61
C 언어의 출력 함수 ... 62
C 언어의 입력 함수 ... 66
변환 문자의 종류 ... 74
2. C++에서의 입출력 방법 ... 76
C와 C++ 입출력 비교 ... 77
C++ 형식 입출력 ... 81
문자(열) 입력 방법 ... 88
연습문제 ... 92
Chapter 4 연산자
1. 최우선 연산자 ... 101
[] 연산자 ... 101
() 연산자 ... 102
. 연산자 ... 103
-> 연산자 ... 104
2. 산술 연산자 ... 105
3. 증감 연산자 ... 107
4. 단항 연산자 ... 109
! 연산자 ... 109
~ 연산자 ... 111
& 연산자 ... 112
sizeof() 연산자 ... 112
5. 대입 연산자 ... 113
6. 관계 연산자 ... 115
7. 논리 연산자 ... 117
비트 논리 연산자 ... 117
일반 논리 연산자 ... 119
8. 형변환 규칙과 캐스트 연산자 ... 120
자동 형변환 ... 120
형변환 연산자(캐스트 연산자) ... 121
9. 삼항 연산자 ... 122
10. 비트 이동 연산자 ... 123
11. 콤마 연산자 ... 125
12. 나열형의 정의 ... 126
연습문제 ... 128
Chapter 5 제어문
1. 조건문 ... 135
단일 if문 ... 135
if~else문 ... 136
다중 if문 ... 141
switch~case문 ... 143
2. 반복문 ... 146
while문 ... 146
do~while문 ... 150
for문 ... 151
3. break문과 continue문 ... 156
break문 ... 156
continue문 ... 158
연습문제 ... 161
Chapter 6 함수
1. 함수의 구조 ... 167
함수의 선언 ... 169
함수의 원형이란? ... 169
함수명의 의미 ... 170
함수의 인수와 매개 변수 ... 170
함수의 반환 ... 171
함수의 정의 ... 171
함수의 인수와 반환 값 관점에서 본 4가지 종류 ... 172
함수의 작동 원리 ... 175
2. 함수와 함수 간의 인수 전달 방식 ... 177
call by value(값에 의한 전달 방식) ... 177
call by pointer(주소에 의한 전달 방식) ... 179
call by reference(참조에 의한 전달 방식) ... 180
3. 선행처리기와 inline 함수 ... 183
#define(매크로 기능) ... 183
#include(파일 포함) ... 185
#undef(매크로 취소) ... 186
그 외의 선행처리기 ... 186
일반 함수와 매크로 함수의 차이점 ... 187
4. 함수의 종류 ... 187
일반 함수 ... 187
매크로 함수 ... 188
확장 함수(inline 함수) ... 189
재귀 함수 ... 191
5. 기억장소의 종류 ... 194
변수의 사용 범위에 따라 ... 195
변수가 생성되는 장소에 따른 변수의 분류 ... 198
연습문제 ... 203
Chapter 7 배열
1. 배열이란? ... 209
2. 배열의 표현 방법 ... 209
배열의 선언 ... 209
배열의 크기 ... 210
3. 배열을 통한 문자열의 표현 방법 ... 213
4. 배열의 초기화 방법 ... 215
1차원 배열의 초기화 방법 ... 215
2차원 배열의 초기화 방법 ... 215
5. 배열의 내용과 주소의 표현 방법 ... 223
6. 배열에서의 인수 전달 ... 226
7. 소트 알고리즘 ... 228
셀렉션 소트 알고리즘 ... 228
버블 소트 알고리즘 ... 230
삽입 소트 알고리즘 ... 232
8. 순차 검색과 이분 검색 ... 233
순차 검색 ... 233
이분 검색 ... 235
연습문제 ... 237
Chapter 8 포인터
1. 포인터의 의미 ... 241
2. 포인터 변수와 선언 방법 ... 242
포인터 변수의 선언 예 ... 242
포인터 변수의 크기 ... 242
포인터 변수의 사용법과 번지 연산자(&) ... 243
3. 간접 연산자(*) ... 244
4. 배열과 포인터 ... 245
포인터에 관한 연산 ... 245
배열과 포인터의 관계 ... 248
포인터 변수를 이용한 문자열 출력 방법 ... 251
5. 포인터 배열 ... 251
6. 포인터의 적용 ... 258
void형 포인터 ... 259
함수형 포인터 ... 260
상수에 대한 포인터 ... 262
포인터 상수 ... 263
상수에 대한 포인터 상수 ... 264
7. main 함수의 인자 ... 265
8. 포인터를 이용한 문자열 함수의 구현 ... 268
문자열 복사 함수 ... 268
문자열 결합 함수 ... 269
문자열 비교 함수 ... 271
문자열 길이 함수 ... 273
문자열의 위치를 구하는 함수 ... 274
연습문제 ... 275
Chapter 9 동적 메모리 할당
1. 동적 메모리 할당이란? ... 277
2. 동적 메모리 할당 방법 ... 278
일반 자료형의 동적 메모리 할당과 제거 ... 278
배열에서 동적 메모리 할당 ... 281
포인터의 포인터를 통한 동적 메모리 할당 ... 287
연습문제 ... 292
Chapter 10 구조체
1. 구조체 선언 형식 ... 295
struct 키워드를 통해 구조체 선언 ... 295
구조체가 다른 구조체의 멤버로 들어가는 경우 ... 297
typedef문을 이용해서 구조체 선언 ... 298
2. 구조체 멤버에 접근하는 방법 ... 299
직접 멤버 접근 연산자(.) ... 299
간접 멤버 접근 연산자(->)를 통해 구조체 멤버에 접근 ... 301
구조체형 배열에 접근 ... 303
3. 구조체의 초기화 ... 308
4. 비트 필드의 사용 ... 310
5. 공용체의 개념 ... 313
공용체의 선언 ... 313
공용체 멤버의 참조 ... 313
6. typedef의 사용 ... 316
연습문제 ... 322
Chapter 11 클래스
1. 클래스란? ... 327
객체지향의 3가지 중요한 특징 ... 327
클래스 선언 ... 328
2. 클래스의 표현 ... 329
접근 지정자 ... 330
공용 멤버(public member) ... 330
전용 멤버(private member) ... 330
멤버 함수 정의법 ... 331
3. 객체 생성 방법 ... 332
4. 클래스 멤버의 접근 ... 335
클래스형 변수를 통한 접근 ... 335
클래스형 포인터를 통한 접근 ... 339
5. 상수 멤버 함수 ... 342
6. 클래스형 참조자를 통한 접근 ... 344
7. 클래스형 배열 ... 345
8. 클래스에서 함수형 포인터 호출 ... 347
9. 멤버 함수의 클래스로부터의 분리와 inline 함수화 ... 351
멤버 함수를 클래스 외부에서 정의 ... 351
멤버 함수를 클래스 외부에서 정의하고 inline 함수화 ... 353
10. 클래스 멤버 함수의 내부적 작동 원리 ... 355
11. friend 함수 ... 359
연습문제 ... 366
Chapter 12 C++ 중복 정의
1. 함수 중복 정의와 연산자 중복 정의 ... 369
함수 중복 정의 ... 369
연산자 중복 정의 ... 370
2. 연산자 중복 함수 ... 371
3. 산술 연산자의 중복 ... 372
4. 단항 연산자의 중복 ... 380
5. 입출력 연산자의 중복 함수 정의 ... 382
출력 연산자의 중복(≪) ... 383
입력 연산자의 중복(≫) ... 383
6. 첨자 연산자의 중복 ... 389
7. new/delete 연산자의 중복 ... 393
new 연산자의 중복 ... 393
delete 연산자의 중복 ... 393
연습문제 ... 398
Chapter 13 생성자
1. 생성자란? ... 401
2. 소멸자 ... 409
3. static 데이터 멤버와 멤버 함수 ... 413
정적 데이터 멤버 ... 413
정적 멤버 함수 ... 417
4. 복사 생성자 ... 422
연습문제 ... 430
Chapter 14 상속
1. 상속이란? ... 433
2. 파생 클래스의 정의 ... 435
3. 클래스 상속에서 베이스 클래스의 접근 허용 지정자 ... 435
4. 파생 클래스 쪽의 멤버 함수에서 베이스 클래스의 멤버 함수 호출 ... 443
5. 콜론 초기화 ... 444
6. 상속 관계에서 생성자의 사용 ... 447
7. 다중 상속 ... 453
연습문제 ... 455
Chapter 15 가상 함수
1. 가상 함수란? ... 459
2. 가상 함수의 형식 ... 459
3. 가상 함수의 기능 ... 460
4. 순수 가상 함수 ... 467
5. 가상 소멸자 ... 471
연습문제 ... 476
Chapter 16 템플릿
1. 템플릿이란? ... 481
2. 템플릿 함수 ... 481
3. 템플릿 클래스 ... 486
연습문제 ... 496
Chapter 17 파일 입출력
1. 파일 입출력 ... 497
2. 순차 파일로부터 데이터 읽어오기 ... 498
입출력을 위한 파일의 개방 ... 498
파일의 폐쇄 ... 501
3. 문자 단위의 파일 입출력 ... 501
4. 데이터의 추가 ... 506
5. 파일 입출력 오류에 관계된 멤버 함수 ... 510
6. 클래스형 데이터에 대한 파일 입출력 ... 511
연습문제 ... 519
찾아보기 ... 521
더보기 닫기