目录
C/C++程序设计第2版
目录
第1章C语言导论
1.1C语言概述
1.1.1C语言的功能
1.1.2C语言的起源
1.1.3C语言的学习阶段与学习方法
1.2第一个C语言程序
1.2.1程序代码
1.2.2空白和注释
1.2.3预处理指令
1.2.4main函数
1.2.5程序输出
1.3C语言程序的编译运行
1.3.1程序的编译
1.3.2程序的运行和调试
1.4上机实践
1.4.1安装开发环境
1.4.2编辑源程序
1.4.3编译运行程序
1.4.4测试与评阅
1.5练习
第2章数据
2.1基本数据类型
2.1.1整型数据
2.1.2浮点型数据
2.1.3指针型数据
2.2常量
2.2.1字面常量
2.2.2符号常量
2.3变量
2.3.1标识符
2.3.2变量的定义
2.3.3变量的初始化
2.3.4const常量
2.3.5变量的使用
2.4输出与输入
2.4.1基本输出
2.4.2基本输入
2.5练习
第3章运算与表达式
3.1算术运算
3.1.1基本算术运算符
3.1.2优先级与结合性
3.1.3数据类型转换
3.1.4自增、自减运算
3.2关系运算
3.3逻辑运算
3.4位运算
3.4.1按位逻辑运算
*3.4.2移位运算
3.4.3程序例子
3.5指针运算
3.5.1取地址运算
3.5.2操作指针变量
3.5.3移动指针
3.5.4比较指针
3.6其他运算
3.6.1sizeof运算
3.6.2逗号运算
3.6.3条件运算
3.7赋值运算
3.7.1赋值运算符和赋值表达式
3.7.2复合赋值运算
3.8练习
第4章程序控制结构
4.1程序语句
4.2顺序结构
4.3选择结构
4.3.1if语句
4.3.2if嵌套
4.3.3switch语句
4.4循环结构
4.4.1while循环
4.4.2dowhile循环
4.4.3for循环
4.4.4其他控制语句
4.4.5循环控制嵌套
4.5练习
第5章数组
5.1一维数组
5.1.1一维数组的定义
5.1.2一维数组元素的引用
5.1.3一维数组的初始化
5.1.4程序举例
5.2多维数组
5.2.1多维数组的定义
5.2.2多维数组元素的引用
5.2.3多维数组的初始化
5.2.4程序举例
5.3字符数组与字符串
5.3.1字符数组与字符串的关系
5.3.2字符串的输出与输入
5.3.3字符串处理函数
5.3.4程序举例
*5.4指针数组
5.4.1指针数组的定义与应用
5.4.2指向指针的指针
5.5练习
第6章其他数据类型
6.1结构体类型的定义
6.2结构体类型变量
6.2.1结构体变量的定义
6.2.2结构体变量的引用
6.2.3结构体变量的初始化
6.3结构体类型数组
6.3.1结构体数组的定义
6.3.2结构体数组的初始化
6.3.3结构体数组的引用
*6.4位段结构体类型
6.4.1位段成员的定义
6.4.2位段成员的使用
*6.5共用体类型
6.5.1共用体类型的定义
6.5.2共用体变量的定义
6.5.3共用体变量的引用
6.5.4共用体变量的初始化
6.5.5共用体变量的应用
6.6枚举类型
6.6.1枚举类型的定义
6.6.2枚举类型变量的定义与引用
6.7typedef自定义类型
6.7.1typedef定义类型
*6.7.2typedef应用举例
6.8练习
第7章函数
7.1函数的定义和调用
7.1.1函数概述
7.1.2函数的定义
7.1.3函数的调用
7.2函数的返回值、参数及函数声明
7.2.1函数的返回值
7.2.2函数的参数
7.2.3函数的声明
7.3函数的嵌套和递归调用
7.3.1函数的嵌套调用
7.3.2函数的递归调用
7.4函数与指针
7.4.1指针变量作为函数参数
7.4.2数组与函数
7.4.3返回指针值的函数
*7.4.4指向函数的指针
7.5作用域
7.5.1局部作用域
7.5.2全局作用域
7.5.3多文件下的全局作用域
7.6存储类别
7.6.1动态存储方式
7.6.2静态存储方式
7.7练习
第8章内存的使用
8.1动态使用内存
8.1.1分配内存
8.1.2释放内存
8.1.3应用举例
8.2链表
8.2.1链表概述
8.2.2创建链表
8.2.3释放链表
*8.2.4链表操作
8.3练习
第9章文件
9.1文件概述
9.1.1数据文件
9.1.2文件的读写
9.1.3文件指针
9.1.4文件操作的步骤
9.2文件的打开与关闭
9.2.1打开文件
9.2.2关闭文件
9.3文件的读写
9.3.1字符读写文件
9.3.2字符串读写
9.3.3格式化读写文件
9.3.4非格式化读写文件
*9.4文件的随机读写
9.4.1文件定位
9.4.2应用举例
9.5练习
第10章编译预处理与AI辅助编程
10.1宏定义
10.1.1无参数宏定义
10.1.2带参宏定义
10.2文件包含
*10.3条件编译
10.3.1条件编译的形式
10.3.2条件编译与多文件组织
*10.4AI辅助编程
10.4.1概述
10.4.2AI辅助编程的功能
10.4.3常用AI辅助编程工具
10.4.4使用AI生成代码
10.4.5使用AI分析代码
10.5练习
第11章C++对C的扩充
11.1C++语言概述
11.1.1C++的起源
11.1.2C++的面向对象程序设计
11.1.3C++的泛型程序设计
11.1.4C++的过程化程序设计
11.2C++的数据类型
11.2.1常量(const)
11.2.2布尔(bool)
11.2.3引用(&)
11.2.4C++的类型检查
11.3C++的运算符
11.3.1作用域运算符(::)
11.3.2new运算符
11.3.3delete运算符
11.4C++的名字空间
11.5C++的输入、输出
11.5.1基本输入、输出
*11.5.2文件输入、输出
11.6C++的函数与模板
11.6.1内联函数
11.6.2函数的重载
11.6.3带默认参数的函数
*11.6.4函数模板
*11.7C++的异常处理
11.7.1异常的概念
11.7.2C++异常处理的方法
11.7.3C++标准异常
11.8练习
第12章基于C++的面向对象编程
12.1类和对象
12.1.1概述
12.1.2类的定义
12.1.3类和对象的特性
12.1.4构造函数
12.1.5析构函数
*12.1.6静态成员
*12.1.7类的友元
*12.1.8const对象
*12.1.9指向类成员的指针
*12.1.10运算符重载
12.2类的继承与派生
12.2.1继承与派生的概念
12.2.2继承与派生的一般形式
12.2.3派生类的构造函数与析构函数
*12.2.4继承与派生的访问权限
12.3类的多态性
12.3.1多态性的概念
12.3.2虚函数与动态多态
*12.3.3虚类(抽象类)
*12.3.4虚基类
*12.4类模板与泛型编程
12.4.1类模板
12.4.2类模板的继承
12.4.3泛型编程
12.5练习
第13章基于MFC的Windows编程
13.1MFC基础
13.1.1概述
13.1.2创建MFC框架程序
13.1.3Windows程序的资源
13.1.4MFC对话框程序
13.2MFC控件
13.2.1按钮控件
13.2.2静态控件
13.2.3编辑控件
13.3MFC绘图
13.3.1基本概念
13.3.2CDC类与绘图
13.3.3GDI类与绘图属性
*13.3.4修改控件的字体
13.4常用对话框
13.4.1消息对话框
*13.4.2文件对话框
13.5常用消息
13.5.1鼠标消息
*13.5.2键盘消息
*13.5.3定时器消息
*13.5.4关闭窗口消息
13.6练习
第14章编程技术基础
14.1数据结构与算法
14.1.1算法
14.1.2数据结构
14.1.3线性表及其顺序存储结构
14.1.4栈和队列
14.1.5链表
14.1.6树与二叉树
14.1.7查找技术
14.1.8排序技术
14.2程序设计基础
14.2.1程序设计方法与风格
14.2.2结构化程序设计
14.2.3面向对象的程序设计方法
14.3软件工程基础
14.3.1软件工程基本概念
14.3.2结构化分析方法
14.3.3结构化设计方法
14.3.4软件测试
14.3.5程序的调试
14.4数据库设计基础
14.4.1数据库系统的基本概念
14.4.2数据模型
14.4.3关系代数运算
14.4.4数据库设计与管理
14.5练习
参考文献
附录A常用字符与ASCII码对照表
附录B运算符和结合性
附录C常用标准库函数