第1章 C++的初步知识 1
1.1 C++概述 1
1.1.1 C/C++语言发展史 1
1.1.2 C++对C的“增强” 2
1.2 最简单的程序设计 2
1.2.1 程序、程序设计、程序设计语言的概念 2
1.2.2 C++程序举例 3
1.2.3 C++程序的组成 7
1.3 C++程序的书写形式 8
1.4 C++程序的执行步骤 9
1.5 程序设计方法 10
1.5.1 结构化程序设计 10
1.5.2 面向对象的程序设计 11
1.6 关于C++上机实践 11
本章小结 12
习题一 12
第2章 简单数据类型和表达式 15
2.1 简单的运算对象——常量、变量和函数 15
2.1.1 常量 17
2.1.2 变量 19
2.1.3 标准函数 21
2.2 运算符与表达式 22
2.2.1 算术运算符与算术表达式 22
2.2.2 赋值运算符与赋值表达式 25
2.2.3 逗号运算符与逗号表达式 26
2.2.4 关系运算符与关系表达式 27
2.2.5 逻辑运算符与逻辑表达式 28
2.2.6 条件运算符与条件表达式 30
2.2.7 位运算 30
2.2.8 复合运算 33
2.3 各数据类型的混合运算 35
2.3.1 自动类型转换 35
2.3.2 强制类型转换 36
本章小结 36
习题二 37
第3章 简单程序设计 40
3.1 C++的语句 40
3.1.1 语句的基本概念 40
3.1.2 语句的分类 41
3.1.3 赋值语句 43
3.2 C++的输入与输出 43
3.2.1 I/O流 44
3.2.2 数据的输出 44
3.2.3 格式输出 46
3.2.4 数据的输入 48
3.2.5 用getchar和putchar函数进行字符的输入和输出 49
3.3 顺序结构程序设计 50
3.3.1 算法 50
3.3.2 算法的表示 51
3.3.3 简单程序设计 54
3.3.4 举例 54
本章小结 56
习题三 57
第4章 选择结构的程序设计 58
4.1 if语句 58
4.1.1 简单的if语句 58
4.1.2 if-else语句 59
4.1.3 if-else if语句 60
4.1.4 if语句的嵌套 63
4.2 条件运算符与条件表达式 64
4.3 switch语句 65
4.3.1 基本格式 65
4.3.2 执行过程 66
本章小结 68
习题四 68
第5章 循环结构的程序设计 70
5.1 while语句和do-while语句 70
5.1.1 while语句 70
5.1.2 do-while语句 71
5.2 for语句 72
5.2.1 语句格式 72
5.2.2 执行过程 72
5.3 循环的嵌套 74
5.4 continue语句与break语句 75
5.5 循环程序设计举例 76
本章小结 79
习题五 80
第6章 函数 81
6.1 概述 81
6.2 函数的定义 84
6.3 函数的调用 86
6.3.1 函数调用格式及执行过程 86
6.3.2 函数的调用方式 87
6.3.3 对被调用函数的使用声明和函数原型 88
6.4 函数的返回值 89
6.5 函数调用时的参数传递 92
6.6 函数的嵌套调用和递归调用 93
6.6.1 函数的嵌套调用 93
6.6.2 函数的递归调用 94
6.7 局部变量和全局变量及其作用域 96
6.7.1 局部变量 96
6.7.2 全局变量 98
6.8 变量的存储类型 98
6.8.1 局部变量及其存储类型 99
6.8.2 全局变量及其存储类型 102
6.9 内部函数和外部函数 104
6.9.1 内部函数 104
6.9.2 外部函数 104
6.10 内置函数 105
6.11 函数的重载 106
6.12 函数模板 108
6.13 带默认形参值的函数 109
6.14 预处理命令 111
6.14.1 #define宏定义指令 112
6.14.2 #include文件包含指令 112
6.14.3 条件编译指令 113
本章小结 114
习题六 114
第7章 数组 116
7.1 一维数组 116
7.1.1 一维数组的定义 116
7.1.2 一维数组元素的引用 118
7.1.3 一维数组元素的初始化 118
7.1.4 一维数组程序举例 120
7.2 二维数组 124
7.2.1 二维数组的定义 125
7.2.2 二维数组的引用 126
7.2.3 二维数组元素的初始化 127
7.2.4 二维数组程序举例 128
7.3 用数组名作为函数参数 130
7.4 字符数组 133
7.4.1 字符数组的定义和初始化 133
7.4.2 字符数组的引用和赋值 134
7.4.3 字符串及其结束标志 135
7.4.4 字符数组的输入输出 137
7.4.5 常用的字符串处理函数 138
7.4.6 字符数组应用举例 141
7.5 字符串类与字符串变量 142
7.5.1 字符串变量的定义和引用 142
7.5.2 字符串变量的运算 143
7.5.3 字符串数组 144
7.5.4 字符串运算举例 144
本章小结 146
习题七 146
第8章 指针 148
8.1 基本概念 148
8.2 指针变量的定义与引用 149
8.2.1 定义指针变量 149
8.2.2 指针变量的引用 150
8.2.3 指针变量定义与引用的有关说明 152
8.2.4 指针变量作为函数形参 156
8.3 指针与数组 159
8.3.1 指向数组的指针 159
8.3.2 利用指针变量访问一维数组 160
8.3.3 利用指针变量访问二维数组 162
8.4 指针与字符串 169
8.4.1 字符串的一般操作 169
8.4.2 使用指针访问字符串 170
8.4.3 字符串指针作为函数参数 171
8.4.4 有关字符串的基本操作 173
8.5 指针与函数 175
8.5.1 指针类型的函数(返回值为指针的函数) 175
8.5.2 函数的指针以及指向函数的指针变量 177
8.6 指针数组和指向指针的指针 180
8.6.1 指针数组 180
8.6.2 指向指针的指针变量 182
8.6.3 指针数组作为主函数main的形参 183
8.7 引用 185
8.7.1 引用的基本概念 185
8.7.2 引用作为函数的参数 186
本章小结 187
习题八 189
第9章 结构体和链表 191
9.1 结构体 191
9.1.1 结构体的定义与引用 191
9.1.2 结构体数组 194
9.1.3 结构体指针 195
9.2 链表 196
9.2.1 链表的概念 196
9.2.2 链表的操作 196
本章小结 200
习题九 200
第10章 文件 201
10.1 文件概述 201
10.2 C++文件操作概述 202
10.3 打开和关闭文件 202
10.3.1 打开文件 202
10.3.2 关闭文件 204
10.4 文件的读写 205
10.4.1 文本文件的读写 205
l0.4.2 二进制文件的读写 206
10.4.3 文件读写简单实例 206
10.5 检测文件是否结束函数feof() 208
10.6 文件定位 208
本章小结 209
习题十 209
第1l章 类和对象 210
11.1 面向对象的程序设计 210
11.1.1 什么是OOP 210
11.1.2 OOP技术的基本概念 211
11.1.3 OOP技术的特征 213
11.2 类的声明和对象的定义 213
11.2.1 类的声明格式及定义 214
11.2.2 类的成员函数的定义 215
11.2.3 对象的定义 218
11.2.4 this指针 219
11.3 构造函数和析构函数 220
11.3.1 构造函数 220
11.3.2 析构函数 221
11.4 对象 223
11.4.1 对象的初始化 223
11.4.2 拷贝构造函数 224
11.4.3 对象赋值 225
11.4.4 向函数传递对象 226
11.4.5 返回对象 227
11.5 类型转换函数 228
本章小结 229
习题十一 230
第12章 继承与多态 232
12.1 基本概念 232
12.1.1 基类与派生类 233
12.1.2 派生类的定义格式 233
12.1.3 基类与派生类的关系 233
12.2 单继承 234
12.3 多继承 242
12.4 虚基类 243
12.5 运算符重载 245
12.6 多态性 246
12.7 虚函数 249
本章小结 251
习题十二 252
附录A 常用字符与标准ASCII码对照表 253
附录B C++标准函数 254
参考文献 258