从零开始学C++

从零开始学C++
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: 编著
2022-07
版次: 1
ISBN: 9787122404527
定价: 99.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 355页
字数: 568千字
2人买过
  • 本书从零基础读者的角度出发,通过通俗易懂的语言、丰富的实例,循序渐进地让读者在实践中学习C 编程知识,并提升自己的实际开发能力。全书共分为6篇20章,内容包括初识C 、第一个C 程序、数据类型、运算符与表达式、条件判断语句、循环语句、函数、数组、指针与引用、构造数据类型、面向对象编程、类和对象、继承与派生、模板、STL标准模板库、文件操作、RTTI与异常处理、网络通信、图书管理系统、网络五子棋等。书中知识点讲解细致,侧重介绍每个知识点的使用场景,涉及的代码给出了详细的注释,可以使读者轻松领会C 程序开发的精髓,快速提高开发技能。同时,本书配套了大量教学视频,扫码即可观看,还提供相关程序的源文件,方便读者实践。本书适合C 初学者、软件开发入门者自学使用,也可用作高等院校相关专业的教材及参考书。 第1篇 基础知识篇

    第1章 初识C      2 视频讲解:6节,33分钟

    1.1 C 发展史     3

    1.1.1 20世纪最伟大的发明之一——计算机     3

    1.1.2 C 发展历程     3

    1.1.3 C 相关的杰出人物     4

    1.2 开发环境     5

    1.2.1 Visual C 6.0的安装     5

    1.2.2 Visual C 6.0的使用     8

    1.3 开发应用程序过程     12

    1.4 C 工程项目文件     15

    1.5 C 的特点     15

    本章知识思维导图     16

    第2章 第一个C 程序     17 视频讲解:2节,29分钟

    2.1 最简单的C 程序     18

    2.2 #include指令     18

    2.2.1 #include     18

    2.2.2 iostream     19

    2.3 注释     19

    2.3.1 单行注释     19

    2.3.2 多行注释     20

    2.4 main函数     20

    2.5 函数体     21

    2.6 函数返回值     22

    本章知识思维导图     22

    第3章 数据类型     23 视频讲解:4节,133分钟

    3.1 常量及符号     24

    3.1.1 整型常量     24

    3.1.2 浮点型常量     25

    3.1.3 字符常量     25

    [实例3.1] 转义字符应用     25

    3.1.4 字符串常量     26

    3.1.5 其他常量     27

    3.2 变量     27

    3.2.1 标识符     27

    3.2.2 变量与变量说明     28

    3.2.3 整型变量     28

    3.2.4 浮点型变量     29

    3.2.5 变量赋值     29

    3.2.6 变量赋初值     29

    3.2.7 字符变量     30

    [实例3.2] 字符型数据与整型数据间运算     30

    [实例3.3] 字符型数据进行算术运算     30

    3.3 常用数据类型     31

    3.3.1 定义数据类型     32

    [实例3.4] 利用浮点数精度进行实数比较     33

    3.3.2 字符类型     33

    3.3.3 布尔类型     33

    3.4 数据输入与输出     34

    3.4.1 控制台屏幕     34

    3.4.2 C 中的流     34

    [实例3.5] 简单输出字符     35

    3.4.3 流操作的控制     36

    [实例3.6] 控制打印格式程序     36

    [实例3.7] 使用printf进行输出     39

    本章知识思维导图     40

    第4章 运算符与表达式     41 视频讲解:4节,129分钟

    4.1 运算符     42

    4.1.1 算术运算符     42

    4.1.2 关系运算符     43

    4.1.3 逻辑运算符     44

    [实例4.1] 求逻辑表达式的值     45

    4.1.4 赋值运算符     45

    4.1.5 位运算符     46

    [实例4.2] 位运算符应用     47

    4.1.6 移位运算符     48

    4.1.7 sizeof运算符     49

    4.1.8 条件运算符     50

    4.1.9 逗号运算符     50

    4.2 结合性和优先级     50

    4.3 表达式     51

    4.3.1 算术表达式     52

    4.3.2 关系表达式     52

    4.3.3 条件表达式     52

    4.3.4 赋值表达式     52

    4.3.5 逻辑表达式     53

    4.3.6 逗号表达式     53

    [实例4.3] 逗号运算符应用     53

    4.3.7 表达式中的类型转换     54

    [实例4.4] 隐式类型转换     55

    [实例4.5] 强制类型转换应用     56

    4.4 判断左值与右值     56

    本章知识思维导图     57

    第5章 条件判断语句     58 视频讲解:5节,98分钟

    5.1 决策分支     59

    5.2 判断语句     59

    5.2.1 第一种形式的判断语句     59

    [实例5.1] 判断输入数是否为奇数     60

    5.2.2 第二种形式的判断语句     61

    [实例5.2] 根据分数判断是否优秀     61

    [实例5.3] 改进的奇偶性判别     62

    5.2.3 第三种形式的判断语句     62

    [实例5.4] 根据成绩划分等级     63

    5.3 使用条件运算符进行判断     64

    [实例5.5] 用条件运算符完成判断数的奇偶性     64

    [实例5.6] 条件表达式判断一个数是否是3和5的整倍数(1)     65

    [实例5.7] 条件表达式判断一个数是否是3和5的整倍数(2)     65

    5.4 switch语句     65

    [实例5.8] 根据输入的字符输出字符串(1)     66

    [实例5.9] 根据输入的字符输出字符串(2)     67

    [实例5.10] 根据输入的字符输出字符串(3)     67

    5.5 判断语句的嵌套     69

    [实例5.11] 判断是否是闰年(1)     69

    [实例5.12] 判断是否是闰年(2)     70

    本章知识思维导图     71

    第6章 循环语句     72 视频讲解:5节,82分钟

    6.1 while循环语句     73

    [实例6.1] 使用while循环语句计算从1到10的累加     73

    6.2 do…while循环语句     74

    [实例6.2] 使用do…while循环语句计算1到10的累加     75

    6.3 for循环语句     76

    [实例6.3] 用for循环语句计算从1到10的累加     76

    6.4 循环控制     79

    6.4.1 控制循环的变量     79

    6.4.2 break语句     80

    [实例6.4] 使用break语句跳出循环     80

    6.4.3 continue语句     81

    [实例6.5] 使用continue语句跳出循环     81

    6.5 循环嵌套     81

    [实例6.6] 输出乘法口诀表     82

    本章知识思维导图     83

    第2篇 高级技术篇

    第7章 函数     86 视频讲解:7节,203分钟

    7.1 函数概述     87

    7.1.1 函数的定义     87

    7.1.2 函数的声明     87

    [实例7.1] 声明、定义和使用函数     87

    7.2 函数参数及返回值     88

    7.2.1 返回值     88

    7.2.2 空函数     89

    7.2.3 形参与实参     89

    7.2.4 默认参数     90

    [实例7.2] 调用默认参数的函数     90

    7.2.5 可变参数     91

    [实例7.3] 定义省略号形式的函数参数     91

    7.3 函数调用     92

    7.3.1 传值调用     92

    [实例7.4] 使用传值调用     92

    7.3.2 嵌套调用     93

    7.3.3 递归调用     94

    [实例7.5] 汉诺(Hanoi)塔问题     94

    [实例7.6] 利用循环求n的阶乘     96

    7.4 变量作用域     96

    7.5 重载函数     97

    [实例7.7] 使用重载函数     97

    7.6 内联函数     98

    7.7 变量的存储类别     98

    7.7.1 auto变量     99

    [实例7.8] 输出不同生命期的变量值     99

    7.7.2 static变量     100

    [实例7.9] 使用static变量实现累加     100

    7.7.3 register变量     101

    7.7.4 extern变量     101

    本章知识思维导图     102

    第8章 数组     103 视频讲解:7节,108分钟

    8.1 一维数组     104

    8.1.1 一维数组的声明     104

    8.1.2 一维数组的引用     104

    8.1.3 一维数组的初始化     104

    [实例8.1] 一维数组赋值     105

    8.2 二维数组     106

    8.2.1 二维数组的声明     106

    8.2.2 二维数组元素的引用     106

    8.2.3 二维数组的初始化     107

    [实例8.2] 将二维数组行列对换     108

    8.3 字符数组     108

    [实例8.3] 使用字符串结束符\'\\0\'防止出现非法字符     109

    [实例8.4] 输出字符数组中内容     110

    8.4 字符串处理函数     111

    8.4.1 strcat函数     111

    [实例8.5] 连接字符串     111

    [实例8.6] 不使用strcat函数连接两个字符串     111

    8.4.2 strcpy函数     112

    [实例8.7] 字符串复制     112

    8.4.3 strcmp函数     113

    [实例8.8] 字符串比较     113

    8.4.4 strlen函数     114

    [实例8.9] 获取字符串长度     114

    本章知识思维导图     115

    第9章 指针与引用     116 视频讲解:6节,156分钟

    9.1 指针     117

    9.1.1 变量与指针     117

    [实例9.1] 输出变量的地址值     118

    9.1.2 指针运算符和取地址运算符     119

    [实例9.2] 输出指针对应的数值     119

    9.1.3 指针运算     120

    [实例9.3] 输出指针运算后地址值     120

    9.1.4 指向空的指针与空类型指针     121

    [实例9.4] 空类型指针的使用     121

    9.1.5 指向常量的指针与指针常量     122

    [实例9.5]  指针与const     122

    9.2 指针与数组     123

    9.2.1 数组的存储     123

    9.2.2 指针与一维数组     123

    [实例9.6] 通过指针变量获取数组中元素     124

    9.2.3 指针与二维数组     125

    [实例9.7] 将多维数组转换成一维数组     125

    [实例9.8] 使用指针变量遍历二维数组     126

    [实例9.9] 使用数组地址将二维数组输出     127

    [实例9.10] 数组指针与指针数组     128

    9.2.4 指针与字符数组     129

    [实例9.11] 通过指针偏移连接两个字符串     129

    9.3 指针在函数中的应用     130

    9.3.1 传递地址     130

    [实例9.12] 调用自定义函数交换两变量值     130

    9.3.2 指向函数的指针     131

    [实例9.13] 使用指针函数进行平均值计算     132

    9.3.3 从函数中返回指针     132

    [实例9.14] 指针作返回值     133

    9.4 指针数组     133

    [实例9.15] 用指针数组中各个元素分别指向若干个字符串     134

    9.5 安全使用指针     135

    9.5.1 内存分配     135

    [实例9.16] 动态分配空间     136

    [实例9.17] 主动释放内存空间     136

    9.5.2 内存安全     137

    [实例9.18] 被销毁的内存     137

    [实例9.19] 丢失的内存     138

    [实例9.20] 回收动态内存的一般处理步骤     139

    9.6 引用     139

    9.6.1 引用概述     139

    [实例9.21] 输出引用     140

    9.6.2 使用引用传递参数     141

    [实例9.22] 通过引用交换数值     141

    9.6.3 数组作函数参数     142

    [实例9.23] 获取命令参数     142

    [实例9.24] 输出每行数组中的最小值     142

    本章知识思维导图     144

    第10章  构造数据类型     145 视频讲解:6节,92分钟

    10.1 结构体     146

    10.1.1 结构体定义     146

    10.1.2 结构体变量     146

    10.1.3 结构体成员及初始化     147

    [实例10.1] 为结构体成员赋值     147

    [实例10.2] 使用结构体指针变量引用结构体成员     148

    10.1.4 结构体的嵌套     149

    [实例10.3] 使用嵌套的结构体     150

    10.1.5 结构体大小     150

    10.2 重命名数据类型     151

    [实例10.4] 三只小狗     152

    10.3 结构体与函数     153

    10.3.1 结构体变量作函数参数     153

    [实例10.5] 使用结构体变量作函数参数     153

    10.3.2 结构体指针变量作函数参数     154

    [实例10.6] 使用结构体指针变量作函数参数     154

    10.4 结构体数组     155

    10.4.1 结构体数组的声明与引用     155

    10.4.2 指针访问结构体数组     156

    [实例10.7] 使用指针访问结构体数组     156

    10.5 共用体     156

    10.5.1 共用体的定义与声明     157

    10.5.2 共用体的大小     158

    [实例10.8] 使用共用体变量     158

    10.5.3 共用体类型的特点     158

    10.6 枚举类型     159

    10.6.1 枚举类型的声明     159

    10.6.2 枚举类型变量     160

    [实例10.9] 枚举变量的赋值     160

    10.6.3 枚举类型的运算     161

    [实例10.10] 枚举值的比较运算     161

    本章知识思维导图     162

    第3篇 面向对象编程篇

    第11章  面向对象编程     164 视频讲解:3节,38分钟

    11.1 面向对象概述     165

    11.2 面向过程编程与面向对象编程     166

    11.2.1 面向过程编程     166

    11.2.2 面向对象编程     166

    11.2.3 面向对象的特点     167

    11.3 统一建模语言     167

    11.3.1 统一建模语言概述     167

    11.3.2 统一建模语言的结构     168

    11.3.3 面向对象的建模     170

    本章知识思维导图     170

    第12章  类和对象     171 视频讲解:6节,197分钟

    12.1 C 类     172

    12.1.1 类概述     172

    12.1.2 类的声明与定义     172

    12.1.3 类的实现     173

    12.1.4 对象的声明     175

    [实例12.1] 对象的引用     176

    12.2 构造函数     177

    12.2.1 构造函数概述     177

    [实例12.2] 使用构造函数进行初始化操作     178

    12.2.2 复制构造函数     179

    [实例12.3] 使用复制构造函数     179

    12.3 析构函数     180

    [实例12.4] 使用析构函数     180

    12.4 类成员     181

    12.4.1 访问类成员     181

    12.4.2 内联成员函数     183

    12.4.3 静态类成员     184

    12.4.4 隐藏的this指针     185

    12.4.5 嵌套类     187

    12.5 友元     188

    12.5.1 友元概述     188

    12.5.2 友元类     189

    12.5.3 友元方法     190

    [实例12.5] 定义友元方法     190

    12.6 命名空间     192

    12.6.1 使用命名空间     192

    12.6.2 定义命名空间     192

    [实例12.6] 定义命名空间     193

    [实例12.7] 使用“using namespace”语句     194

    12.6.3 在多个文件中定义命名空间     194

    12.6.4 定义嵌套的命名空间     195

    [实例12.8] 定义嵌套的命名空间     196

    12.6.5 定义未命名的命名空间     197

    本章知识思维导图     198

    第13章  继承与派生     199 视频讲解:5节,112分钟

    13.1 继承     200

    13.1.1 类的继承     200

    [实例13.1] 以公有方式继承     200

    13.1.2 继承后可访问性     201

    13.1.3 构造函数访问顺序     203

    [实例13.2] 构造函数访问顺序     203

    13.1.4 子类显式调用父类构造函数     204

    [实例13.3] 子类显式调用父类的构造函数     204

    13.1.5 子类隐藏父类的成员函数     205

    [实例13.4] 子类隐藏父类的成员函数     206

    13.2 重载运算符     207

    13.2.1 重载运算符的必要性     207

    13.2.2 重载运算符的形式与规则     208

    [实例13.5] 通过重载运算符实现求和     209

    13.2.3 重载运算符的运算     209

    13.2.4 转换运算符     211

    [实例13.6] 转换运算符     212

    13.3 多重继承     212

    13.3.1 多重继承定义     212

    13.3.2 二义性     214

    13.3.3 多重继承的构造顺序     214

    [实例13.7] 多重继承的构造顺序     214

    13.4 多态     215

    13.4.1 虚函数概述     216

    13.4.2 利用虚函数实现动态绑定     216

    [实例13.8] 利用虚函数实现动态绑定     216

    13.4.3 虚继承     217

    [实例13.9] 虚继承     217

    13.5 抽象类     219

    [实例13.10] 创建纯虚函数     219

    本章知识思维导图     221

    第4篇 模板及文件篇

    第14章  模板     224 视频讲解:3节,20分钟

    14.1 函数模板     225

    14.1.1 函数模板的定义     225

    14.1.2 函数模板的作用     226

    [实例14.1] 使用数组作为模板参数     226

    14.1.3 重载函数模板     227

    [实例14.2] 求出字符串的最小值     227

    14.2 类模板     228

    14.2.1 类模板的定义与声明     228

    14.2.2 简单类模板     230

    14.2.3 默认模板参数     230

    14.2.4 为具体类型的参数提供默认值     231

    14.2.5 有界数组模板     231

    [实例14.3] 数组模板的应用     232

    14.3 模板的使用     233

    14.3.1 定制类模板     233

    14.3.2 定制类模板成员函数     235

    本章知识思维导图     236

    第15章  STL标准模板库     237 视频讲解:3节,30分钟

    15.1 序列容器     238

    15.1.1 对比容器适配器与容器     238

    15.1.2 对比迭代器与容器     238

    15.1.3 向量类模板     239

    [实例15.1] vector模板类的操作方法     240

    15.1.4 双端队列类模板     242

    [实例15.2] 双端队列类模板的应用     243

    15.1.5 链表类模板     244

    [实例15.3] 迭代器的应用     245

    15.2 结合容器     246

    15.2.1 set类模板     246

    [实例15.4] 创建整型类集合,并插入数据     247

    [实例15.5] 创建整型类集合,并删除集合中的元素     248

    [实例15.6] 通过指定的字符在集合中查找元素     248

    15.2.2 multiset类模板     250

    15.2.3 map类模板     253

    15.2.4 multimap类模板     255

    15.3 迭代器     256

    15.3.1 输出迭代器     256

    [实例15.7] 应用输出迭代器     256

    15.3.2 输入迭代器     256

    15.3.3 前向迭代器     257

    15.3.4 双向迭代器     257

    15.3.5 随机访问迭代器     258

    本章知识思维导图     259

    第16章  文件操作     260 视频讲解:6节,35分钟

    16.1 流简介     261

    16.1.1 C 中的流类库     261

    16.1.2 类库的使用     261

    16.1.3 ios类中的枚举常量     262

    16.1.4 流的输入/输出     262

    [实例16.1] 字符相加并输出     262

    16.2 文件打开     263

    16.2.1 打开方式     263

    16.2.2 默认打开模式     264

    16.2.3 打开文件同时创建文件     264

    [实例16.2] 创建文件     264

    16.3 文件的读写     265

    16.3.1 文件流     265

    [实例16.3] 读写文件     266

    16.3.2 写文本文件     267

    [实例16.4] 向文本文件写入数据     267

    16.3.3 读取文本文件     268

    [实例16.5] 读取文本文件内容     268

    16.3.4 二进制文件的读写     268

    [实例16.6] 使用read读取文件     268

    16.3.5 实现文件复制     269

    16.4 文件指针移动操作     270

    16.4.1 文件错误与状态     270

    16.4.2 文件的追加     271

    16.4.3 文件结尾的判断     272

    [实例16.7] 判断文件结尾     272

    16.4.4 在指定位置读写文件     273

    16.5 文件和流的关联和分离     274

    16.6 删除文件     275

    本章知识思维导图     276

    第5篇 异常处理及网络篇

    第17章  RTTI与异常处理     278 视频讲解:2节,18分钟

    17.1 RTTI     279

    17.1.1 RTTI的定义     279

    17.1.2 RTTI与引用     280

    17.1.3 RTTI与多重继承     281

    17.1.4 RTTI映射语法     281

    17.2 异常处理     283

    17.2.1 抛出异常     283

    17.2.2 异常捕获     285

    17.2.3 异常匹配     287

    17.2.4 标准异常     288

    本章知识思维导图     289

    第18章  网络通信     290 视频讲解:3节,20分钟

    18.1 TCP/IP     291

    18.1.1 OSI参考模型     291

    18.1.2 TCP/IP参考模型     291

    18.1.3 IP地址     292

    18.1.4 数据包格式     292

    18.2 套接字     294

    18.2.1 Winsock套接字     294

    18.2.2 Winsock的使用     295

    18.2.3 套接字阻塞模式     300

    18.2.4 字节顺序     300

    18.2.5 面向连接流     300

    18.2.6 面向无连接流     301

    18.3 简单协议通信     301

    18.3.1 服务端     302

    [实例18.1] 服务器     302

    18.3.2 客户端     304

    [实例18.2] 客户端     304

    18.3.3 实例的运行     304

    本章知识思维导图     305

    第19章  图书管理系统     308 视频讲解:7节,44分钟

    19.1 开发背景     309

    19.2 需求分析     309

    19.3 系统设计     309

    19.3.1 系统目标     309

    19.3.2 系统功能结构     309

    19.3.3 系统预览     310

    19.3.4 业务流程图     310

    19.4 公共类设计     311

    19.5 主窗体模块设计     314

    19.5.1 主窗体模块概述     314

    19.5.2 主窗体模块技术分析     314

    19.5.3 主窗体模块实现过程     315

    19.6 添加新书模块设计     317

    19.6.1 添加新书模块概述     317

    19.6.2 添加新书模块技术分析     317

    19.6.3 添加新书模块实现过程     317

    19.7 浏览全部模块设计     318

    19.7.1 浏览全部模块概述     318

    19.7.2 浏览全部模块技术分析     318

    19.7.3 浏览全部模块实现过程     318

    19.8 删除图书模块设计     319

    19.8.1 删除图书模块概述     319

    19.8.2 删除图书模块技术分析     319

    19.8.3 删除图书模块实现过程     319

    19.9 实现全部模块     320

    本章知识思维导图     320

    第20章  网络五子棋     321 视频讲解:7节,35分钟

    20.1 开发背景     322

    20.2 需求分析     322

    20.3 系统设计     322

    20.3.1 系统功能结构     322

    20.3.2 系统预览     322

    20.4 关键技术分析与实现     323

    20.4.1 使用TCP进行网络通信     323

    20.4.2 定义网络通信协议     325

    20.4.3 实现动态调整棋盘大小     326

    20.4.4 在棋盘中绘制棋子     327

    20.4.5 五子棋赢棋判断     329

    20.4.6 设计游戏悔棋功能     332

    20.4.7 设计游戏回放功能     334

    20.4.8 对方网络状态测试     337

    20.5 服务器端主窗体设计     339

    20.5.1 服务器端主窗体概述     339

    20.5.2 服务器端主窗体实现过程     339

    20.6 棋盘窗体模块设计     341

    20.6.1 棋盘窗体模块概述     341

    20.6.2 棋盘窗体模块界面布局     341

    20.6.3 棋盘窗体模块实现过程     342

    20.7 游戏控制窗体模块设计     348

    20.7.1 游戏控制窗体模块概述     348

    20.7.2 游戏控制窗体模块界面布局     348

    20.7.3 游戏控制窗体模块实现过程     349

    20.8 对方信息窗体模块设计     351

    20.8.1 对方信息窗体模块概述     351

    20.8.2 对方信息窗体模块界面布局     351

    20.8.3 对方信息窗体模块实现过程     351

    20.9 客户端主窗体模块设计     352

    20.9.1 客户端主窗体模块概述     352

    20.9.2 客户端主窗体模块实现过程     353

    本章知识思维导图     355

     
  • 内容简介:
    本书从零基础读者的角度出发,通过通俗易懂的语言、丰富的实例,循序渐进地让读者在实践中学习C 编程知识,并提升自己的实际开发能力。全书共分为6篇20章,内容包括初识C 、第一个C 程序、数据类型、运算符与表达式、条件判断语句、循环语句、函数、数组、指针与引用、构造数据类型、面向对象编程、类和对象、继承与派生、模板、STL标准模板库、文件操作、RTTI与异常处理、网络通信、图书管理系统、网络五子棋等。书中知识点讲解细致,侧重介绍每个知识点的使用场景,涉及的代码给出了详细的注释,可以使读者轻松领会C 程序开发的精髓,快速提高开发技能。同时,本书配套了大量教学视频,扫码即可观看,还提供相关程序的源文件,方便读者实践。本书适合C 初学者、软件开发入门者自学使用,也可用作高等院校相关专业的教材及参考书。
  • 目录:
    第1篇 基础知识篇

    第1章 初识C      2 视频讲解:6节,33分钟

    1.1 C 发展史     3

    1.1.1 20世纪最伟大的发明之一——计算机     3

    1.1.2 C 发展历程     3

    1.1.3 C 相关的杰出人物     4

    1.2 开发环境     5

    1.2.1 Visual C 6.0的安装     5

    1.2.2 Visual C 6.0的使用     8

    1.3 开发应用程序过程     12

    1.4 C 工程项目文件     15

    1.5 C 的特点     15

    本章知识思维导图     16

    第2章 第一个C 程序     17 视频讲解:2节,29分钟

    2.1 最简单的C 程序     18

    2.2 #include指令     18

    2.2.1 #include     18

    2.2.2 iostream     19

    2.3 注释     19

    2.3.1 单行注释     19

    2.3.2 多行注释     20

    2.4 main函数     20

    2.5 函数体     21

    2.6 函数返回值     22

    本章知识思维导图     22

    第3章 数据类型     23 视频讲解:4节,133分钟

    3.1 常量及符号     24

    3.1.1 整型常量     24

    3.1.2 浮点型常量     25

    3.1.3 字符常量     25

    [实例3.1] 转义字符应用     25

    3.1.4 字符串常量     26

    3.1.5 其他常量     27

    3.2 变量     27

    3.2.1 标识符     27

    3.2.2 变量与变量说明     28

    3.2.3 整型变量     28

    3.2.4 浮点型变量     29

    3.2.5 变量赋值     29

    3.2.6 变量赋初值     29

    3.2.7 字符变量     30

    [实例3.2] 字符型数据与整型数据间运算     30

    [实例3.3] 字符型数据进行算术运算     30

    3.3 常用数据类型     31

    3.3.1 定义数据类型     32

    [实例3.4] 利用浮点数精度进行实数比较     33

    3.3.2 字符类型     33

    3.3.3 布尔类型     33

    3.4 数据输入与输出     34

    3.4.1 控制台屏幕     34

    3.4.2 C 中的流     34

    [实例3.5] 简单输出字符     35

    3.4.3 流操作的控制     36

    [实例3.6] 控制打印格式程序     36

    [实例3.7] 使用printf进行输出     39

    本章知识思维导图     40

    第4章 运算符与表达式     41 视频讲解:4节,129分钟

    4.1 运算符     42

    4.1.1 算术运算符     42

    4.1.2 关系运算符     43

    4.1.3 逻辑运算符     44

    [实例4.1] 求逻辑表达式的值     45

    4.1.4 赋值运算符     45

    4.1.5 位运算符     46

    [实例4.2] 位运算符应用     47

    4.1.6 移位运算符     48

    4.1.7 sizeof运算符     49

    4.1.8 条件运算符     50

    4.1.9 逗号运算符     50

    4.2 结合性和优先级     50

    4.3 表达式     51

    4.3.1 算术表达式     52

    4.3.2 关系表达式     52

    4.3.3 条件表达式     52

    4.3.4 赋值表达式     52

    4.3.5 逻辑表达式     53

    4.3.6 逗号表达式     53

    [实例4.3] 逗号运算符应用     53

    4.3.7 表达式中的类型转换     54

    [实例4.4] 隐式类型转换     55

    [实例4.5] 强制类型转换应用     56

    4.4 判断左值与右值     56

    本章知识思维导图     57

    第5章 条件判断语句     58 视频讲解:5节,98分钟

    5.1 决策分支     59

    5.2 判断语句     59

    5.2.1 第一种形式的判断语句     59

    [实例5.1] 判断输入数是否为奇数     60

    5.2.2 第二种形式的判断语句     61

    [实例5.2] 根据分数判断是否优秀     61

    [实例5.3] 改进的奇偶性判别     62

    5.2.3 第三种形式的判断语句     62

    [实例5.4] 根据成绩划分等级     63

    5.3 使用条件运算符进行判断     64

    [实例5.5] 用条件运算符完成判断数的奇偶性     64

    [实例5.6] 条件表达式判断一个数是否是3和5的整倍数(1)     65

    [实例5.7] 条件表达式判断一个数是否是3和5的整倍数(2)     65

    5.4 switch语句     65

    [实例5.8] 根据输入的字符输出字符串(1)     66

    [实例5.9] 根据输入的字符输出字符串(2)     67

    [实例5.10] 根据输入的字符输出字符串(3)     67

    5.5 判断语句的嵌套     69

    [实例5.11] 判断是否是闰年(1)     69

    [实例5.12] 判断是否是闰年(2)     70

    本章知识思维导图     71

    第6章 循环语句     72 视频讲解:5节,82分钟

    6.1 while循环语句     73

    [实例6.1] 使用while循环语句计算从1到10的累加     73

    6.2 do…while循环语句     74

    [实例6.2] 使用do…while循环语句计算1到10的累加     75

    6.3 for循环语句     76

    [实例6.3] 用for循环语句计算从1到10的累加     76

    6.4 循环控制     79

    6.4.1 控制循环的变量     79

    6.4.2 break语句     80

    [实例6.4] 使用break语句跳出循环     80

    6.4.3 continue语句     81

    [实例6.5] 使用continue语句跳出循环     81

    6.5 循环嵌套     81

    [实例6.6] 输出乘法口诀表     82

    本章知识思维导图     83

    第2篇 高级技术篇

    第7章 函数     86 视频讲解:7节,203分钟

    7.1 函数概述     87

    7.1.1 函数的定义     87

    7.1.2 函数的声明     87

    [实例7.1] 声明、定义和使用函数     87

    7.2 函数参数及返回值     88

    7.2.1 返回值     88

    7.2.2 空函数     89

    7.2.3 形参与实参     89

    7.2.4 默认参数     90

    [实例7.2] 调用默认参数的函数     90

    7.2.5 可变参数     91

    [实例7.3] 定义省略号形式的函数参数     91

    7.3 函数调用     92

    7.3.1 传值调用     92

    [实例7.4] 使用传值调用     92

    7.3.2 嵌套调用     93

    7.3.3 递归调用     94

    [实例7.5] 汉诺(Hanoi)塔问题     94

    [实例7.6] 利用循环求n的阶乘     96

    7.4 变量作用域     96

    7.5 重载函数     97

    [实例7.7] 使用重载函数     97

    7.6 内联函数     98

    7.7 变量的存储类别     98

    7.7.1 auto变量     99

    [实例7.8] 输出不同生命期的变量值     99

    7.7.2 static变量     100

    [实例7.9] 使用static变量实现累加     100

    7.7.3 register变量     101

    7.7.4 extern变量     101

    本章知识思维导图     102

    第8章 数组     103 视频讲解:7节,108分钟

    8.1 一维数组     104

    8.1.1 一维数组的声明     104

    8.1.2 一维数组的引用     104

    8.1.3 一维数组的初始化     104

    [实例8.1] 一维数组赋值     105

    8.2 二维数组     106

    8.2.1 二维数组的声明     106

    8.2.2 二维数组元素的引用     106

    8.2.3 二维数组的初始化     107

    [实例8.2] 将二维数组行列对换     108

    8.3 字符数组     108

    [实例8.3] 使用字符串结束符\'\\0\'防止出现非法字符     109

    [实例8.4] 输出字符数组中内容     110

    8.4 字符串处理函数     111

    8.4.1 strcat函数     111

    [实例8.5] 连接字符串     111

    [实例8.6] 不使用strcat函数连接两个字符串     111

    8.4.2 strcpy函数     112

    [实例8.7] 字符串复制     112

    8.4.3 strcmp函数     113

    [实例8.8] 字符串比较     113

    8.4.4 strlen函数     114

    [实例8.9] 获取字符串长度     114

    本章知识思维导图     115

    第9章 指针与引用     116 视频讲解:6节,156分钟

    9.1 指针     117

    9.1.1 变量与指针     117

    [实例9.1] 输出变量的地址值     118

    9.1.2 指针运算符和取地址运算符     119

    [实例9.2] 输出指针对应的数值     119

    9.1.3 指针运算     120

    [实例9.3] 输出指针运算后地址值     120

    9.1.4 指向空的指针与空类型指针     121

    [实例9.4] 空类型指针的使用     121

    9.1.5 指向常量的指针与指针常量     122

    [实例9.5]  指针与const     122

    9.2 指针与数组     123

    9.2.1 数组的存储     123

    9.2.2 指针与一维数组     123

    [实例9.6] 通过指针变量获取数组中元素     124

    9.2.3 指针与二维数组     125

    [实例9.7] 将多维数组转换成一维数组     125

    [实例9.8] 使用指针变量遍历二维数组     126

    [实例9.9] 使用数组地址将二维数组输出     127

    [实例9.10] 数组指针与指针数组     128

    9.2.4 指针与字符数组     129

    [实例9.11] 通过指针偏移连接两个字符串     129

    9.3 指针在函数中的应用     130

    9.3.1 传递地址     130

    [实例9.12] 调用自定义函数交换两变量值     130

    9.3.2 指向函数的指针     131

    [实例9.13] 使用指针函数进行平均值计算     132

    9.3.3 从函数中返回指针     132

    [实例9.14] 指针作返回值     133

    9.4 指针数组     133

    [实例9.15] 用指针数组中各个元素分别指向若干个字符串     134

    9.5 安全使用指针     135

    9.5.1 内存分配     135

    [实例9.16] 动态分配空间     136

    [实例9.17] 主动释放内存空间     136

    9.5.2 内存安全     137

    [实例9.18] 被销毁的内存     137

    [实例9.19] 丢失的内存     138

    [实例9.20] 回收动态内存的一般处理步骤     139

    9.6 引用     139

    9.6.1 引用概述     139

    [实例9.21] 输出引用     140

    9.6.2 使用引用传递参数     141

    [实例9.22] 通过引用交换数值     141

    9.6.3 数组作函数参数     142

    [实例9.23] 获取命令参数     142

    [实例9.24] 输出每行数组中的最小值     142

    本章知识思维导图     144

    第10章  构造数据类型     145 视频讲解:6节,92分钟

    10.1 结构体     146

    10.1.1 结构体定义     146

    10.1.2 结构体变量     146

    10.1.3 结构体成员及初始化     147

    [实例10.1] 为结构体成员赋值     147

    [实例10.2] 使用结构体指针变量引用结构体成员     148

    10.1.4 结构体的嵌套     149

    [实例10.3] 使用嵌套的结构体     150

    10.1.5 结构体大小     150

    10.2 重命名数据类型     151

    [实例10.4] 三只小狗     152

    10.3 结构体与函数     153

    10.3.1 结构体变量作函数参数     153

    [实例10.5] 使用结构体变量作函数参数     153

    10.3.2 结构体指针变量作函数参数     154

    [实例10.6] 使用结构体指针变量作函数参数     154

    10.4 结构体数组     155

    10.4.1 结构体数组的声明与引用     155

    10.4.2 指针访问结构体数组     156

    [实例10.7] 使用指针访问结构体数组     156

    10.5 共用体     156

    10.5.1 共用体的定义与声明     157

    10.5.2 共用体的大小     158

    [实例10.8] 使用共用体变量     158

    10.5.3 共用体类型的特点     158

    10.6 枚举类型     159

    10.6.1 枚举类型的声明     159

    10.6.2 枚举类型变量     160

    [实例10.9] 枚举变量的赋值     160

    10.6.3 枚举类型的运算     161

    [实例10.10] 枚举值的比较运算     161

    本章知识思维导图     162

    第3篇 面向对象编程篇

    第11章  面向对象编程     164 视频讲解:3节,38分钟

    11.1 面向对象概述     165

    11.2 面向过程编程与面向对象编程     166

    11.2.1 面向过程编程     166

    11.2.2 面向对象编程     166

    11.2.3 面向对象的特点     167

    11.3 统一建模语言     167

    11.3.1 统一建模语言概述     167

    11.3.2 统一建模语言的结构     168

    11.3.3 面向对象的建模     170

    本章知识思维导图     170

    第12章  类和对象     171 视频讲解:6节,197分钟

    12.1 C 类     172

    12.1.1 类概述     172

    12.1.2 类的声明与定义     172

    12.1.3 类的实现     173

    12.1.4 对象的声明     175

    [实例12.1] 对象的引用     176

    12.2 构造函数     177

    12.2.1 构造函数概述     177

    [实例12.2] 使用构造函数进行初始化操作     178

    12.2.2 复制构造函数     179

    [实例12.3] 使用复制构造函数     179

    12.3 析构函数     180

    [实例12.4] 使用析构函数     180

    12.4 类成员     181

    12.4.1 访问类成员     181

    12.4.2 内联成员函数     183

    12.4.3 静态类成员     184

    12.4.4 隐藏的this指针     185

    12.4.5 嵌套类     187

    12.5 友元     188

    12.5.1 友元概述     188

    12.5.2 友元类     189

    12.5.3 友元方法     190

    [实例12.5] 定义友元方法     190

    12.6 命名空间     192

    12.6.1 使用命名空间     192

    12.6.2 定义命名空间     192

    [实例12.6] 定义命名空间     193

    [实例12.7] 使用“using namespace”语句     194

    12.6.3 在多个文件中定义命名空间     194

    12.6.4 定义嵌套的命名空间     195

    [实例12.8] 定义嵌套的命名空间     196

    12.6.5 定义未命名的命名空间     197

    本章知识思维导图     198

    第13章  继承与派生     199 视频讲解:5节,112分钟

    13.1 继承     200

    13.1.1 类的继承     200

    [实例13.1] 以公有方式继承     200

    13.1.2 继承后可访问性     201

    13.1.3 构造函数访问顺序     203

    [实例13.2] 构造函数访问顺序     203

    13.1.4 子类显式调用父类构造函数     204

    [实例13.3] 子类显式调用父类的构造函数     204

    13.1.5 子类隐藏父类的成员函数     205

    [实例13.4] 子类隐藏父类的成员函数     206

    13.2 重载运算符     207

    13.2.1 重载运算符的必要性     207

    13.2.2 重载运算符的形式与规则     208

    [实例13.5] 通过重载运算符实现求和     209

    13.2.3 重载运算符的运算     209

    13.2.4 转换运算符     211

    [实例13.6] 转换运算符     212

    13.3 多重继承     212

    13.3.1 多重继承定义     212

    13.3.2 二义性     214

    13.3.3 多重继承的构造顺序     214

    [实例13.7] 多重继承的构造顺序     214

    13.4 多态     215

    13.4.1 虚函数概述     216

    13.4.2 利用虚函数实现动态绑定     216

    [实例13.8] 利用虚函数实现动态绑定     216

    13.4.3 虚继承     217

    [实例13.9] 虚继承     217

    13.5 抽象类     219

    [实例13.10] 创建纯虚函数     219

    本章知识思维导图     221

    第4篇 模板及文件篇

    第14章  模板     224 视频讲解:3节,20分钟

    14.1 函数模板     225

    14.1.1 函数模板的定义     225

    14.1.2 函数模板的作用     226

    [实例14.1] 使用数组作为模板参数     226

    14.1.3 重载函数模板     227

    [实例14.2] 求出字符串的最小值     227

    14.2 类模板     228

    14.2.1 类模板的定义与声明     228

    14.2.2 简单类模板     230

    14.2.3 默认模板参数     230

    14.2.4 为具体类型的参数提供默认值     231

    14.2.5 有界数组模板     231

    [实例14.3] 数组模板的应用     232

    14.3 模板的使用     233

    14.3.1 定制类模板     233

    14.3.2 定制类模板成员函数     235

    本章知识思维导图     236

    第15章  STL标准模板库     237 视频讲解:3节,30分钟

    15.1 序列容器     238

    15.1.1 对比容器适配器与容器     238

    15.1.2 对比迭代器与容器     238

    15.1.3 向量类模板     239

    [实例15.1] vector模板类的操作方法     240

    15.1.4 双端队列类模板     242

    [实例15.2] 双端队列类模板的应用     243

    15.1.5 链表类模板     244

    [实例15.3] 迭代器的应用     245

    15.2 结合容器     246

    15.2.1 set类模板     246

    [实例15.4] 创建整型类集合,并插入数据     247

    [实例15.5] 创建整型类集合,并删除集合中的元素     248

    [实例15.6] 通过指定的字符在集合中查找元素     248

    15.2.2 multiset类模板     250

    15.2.3 map类模板     253

    15.2.4 multimap类模板     255

    15.3 迭代器     256

    15.3.1 输出迭代器     256

    [实例15.7] 应用输出迭代器     256

    15.3.2 输入迭代器     256

    15.3.3 前向迭代器     257

    15.3.4 双向迭代器     257

    15.3.5 随机访问迭代器     258

    本章知识思维导图     259

    第16章  文件操作     260 视频讲解:6节,35分钟

    16.1 流简介     261

    16.1.1 C 中的流类库     261

    16.1.2 类库的使用     261

    16.1.3 ios类中的枚举常量     262

    16.1.4 流的输入/输出     262

    [实例16.1] 字符相加并输出     262

    16.2 文件打开     263

    16.2.1 打开方式     263

    16.2.2 默认打开模式     264

    16.2.3 打开文件同时创建文件     264

    [实例16.2] 创建文件     264

    16.3 文件的读写     265

    16.3.1 文件流     265

    [实例16.3] 读写文件     266

    16.3.2 写文本文件     267

    [实例16.4] 向文本文件写入数据     267

    16.3.3 读取文本文件     268

    [实例16.5] 读取文本文件内容     268

    16.3.4 二进制文件的读写     268

    [实例16.6] 使用read读取文件     268

    16.3.5 实现文件复制     269

    16.4 文件指针移动操作     270

    16.4.1 文件错误与状态     270

    16.4.2 文件的追加     271

    16.4.3 文件结尾的判断     272

    [实例16.7] 判断文件结尾     272

    16.4.4 在指定位置读写文件     273

    16.5 文件和流的关联和分离     274

    16.6 删除文件     275

    本章知识思维导图     276

    第5篇 异常处理及网络篇

    第17章  RTTI与异常处理     278 视频讲解:2节,18分钟

    17.1 RTTI     279

    17.1.1 RTTI的定义     279

    17.1.2 RTTI与引用     280

    17.1.3 RTTI与多重继承     281

    17.1.4 RTTI映射语法     281

    17.2 异常处理     283

    17.2.1 抛出异常     283

    17.2.2 异常捕获     285

    17.2.3 异常匹配     287

    17.2.4 标准异常     288

    本章知识思维导图     289

    第18章  网络通信     290 视频讲解:3节,20分钟

    18.1 TCP/IP     291

    18.1.1 OSI参考模型     291

    18.1.2 TCP/IP参考模型     291

    18.1.3 IP地址     292

    18.1.4 数据包格式     292

    18.2 套接字     294

    18.2.1 Winsock套接字     294

    18.2.2 Winsock的使用     295

    18.2.3 套接字阻塞模式     300

    18.2.4 字节顺序     300

    18.2.5 面向连接流     300

    18.2.6 面向无连接流     301

    18.3 简单协议通信     301

    18.3.1 服务端     302

    [实例18.1] 服务器     302

    18.3.2 客户端     304

    [实例18.2] 客户端     304

    18.3.3 实例的运行     304

    本章知识思维导图     305

    第19章  图书管理系统     308 视频讲解:7节,44分钟

    19.1 开发背景     309

    19.2 需求分析     309

    19.3 系统设计     309

    19.3.1 系统目标     309

    19.3.2 系统功能结构     309

    19.3.3 系统预览     310

    19.3.4 业务流程图     310

    19.4 公共类设计     311

    19.5 主窗体模块设计     314

    19.5.1 主窗体模块概述     314

    19.5.2 主窗体模块技术分析     314

    19.5.3 主窗体模块实现过程     315

    19.6 添加新书模块设计     317

    19.6.1 添加新书模块概述     317

    19.6.2 添加新书模块技术分析     317

    19.6.3 添加新书模块实现过程     317

    19.7 浏览全部模块设计     318

    19.7.1 浏览全部模块概述     318

    19.7.2 浏览全部模块技术分析     318

    19.7.3 浏览全部模块实现过程     318

    19.8 删除图书模块设计     319

    19.8.1 删除图书模块概述     319

    19.8.2 删除图书模块技术分析     319

    19.8.3 删除图书模块实现过程     319

    19.9 实现全部模块     320

    本章知识思维导图     320

    第20章  网络五子棋     321 视频讲解:7节,35分钟

    20.1 开发背景     322

    20.2 需求分析     322

    20.3 系统设计     322

    20.3.1 系统功能结构     322

    20.3.2 系统预览     322

    20.4 关键技术分析与实现     323

    20.4.1 使用TCP进行网络通信     323

    20.4.2 定义网络通信协议     325

    20.4.3 实现动态调整棋盘大小     326

    20.4.4 在棋盘中绘制棋子     327

    20.4.5 五子棋赢棋判断     329

    20.4.6 设计游戏悔棋功能     332

    20.4.7 设计游戏回放功能     334

    20.4.8 对方网络状态测试     337

    20.5 服务器端主窗体设计     339

    20.5.1 服务器端主窗体概述     339

    20.5.2 服务器端主窗体实现过程     339

    20.6 棋盘窗体模块设计     341

    20.6.1 棋盘窗体模块概述     341

    20.6.2 棋盘窗体模块界面布局     341

    20.6.3 棋盘窗体模块实现过程     342

    20.7 游戏控制窗体模块设计     348

    20.7.1 游戏控制窗体模块概述     348

    20.7.2 游戏控制窗体模块界面布局     348

    20.7.3 游戏控制窗体模块实现过程     349

    20.8 对方信息窗体模块设计     351

    20.8.1 对方信息窗体模块概述     351

    20.8.2 对方信息窗体模块界面布局     351

    20.8.3 对方信息窗体模块实现过程     351

    20.9 客户端主窗体模块设计     352

    20.9.1 客户端主窗体模块概述     352

    20.9.2 客户端主窗体模块实现过程     353

    本章知识思维导图     355

     
查看详情
12
您可能感兴趣 / 更多
从零开始学C++
MySQL快速入门到精通
明日科技 编著
从零开始学C++
Python游戏开发快速入门到精通
明日科技 编著
从零开始学C++
Python OpenCV快速入门到精通
明日科技 编著
从零开始学C++
Spring快速入门到精通
明日科技 编著
从零开始学C++
快速上手Python:基础·进阶·实战
明日科技 编著
从零开始学C++
从零开始学Node.js
明日科技 编著
从零开始学C++
从零开始学HTML5+CSS3+JavaScript
明日科技 编著
从零开始学C++
从零开始学Vue.js
明日科技 编著
从零开始学C++
从零开始学Java
明日科技 编著
从零开始学C++
从零开始学Spring Boot
明日科技 编著
从零开始学C++
从零开始学MySQL
明日科技 编著
从零开始学C++
从零开始学ASP.NET
明日科技 编著