图书介绍
C语言解惑【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

- 刘振安,刘燕君编著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111479857
- 出版时间:2014
- 标注页数:520页
- 文件大小:66MB
- 文件页数:532页
- 主题词:C语言-程序设计
PDF下载
下载说明
C语言解惑PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一篇 C语言编程中的对与错2
第1章 初涉C语言者的困惑2
1.1 中文字符以假乱真2
1.2 象形字体扰乱视听3
1.3 都是注释惹的祸4
1.4 千万不要忘记我4
1.5 别把分号放错地方4
1.6 少了花括号就是行不通6
1.7 scanf要“&”不要“\n”6
1.8 老大就是要在最前面6
1.9 记住我就会受益无穷7
第2章 用好printf和scanf一对活宝9
2.1 printf输出的小奥妙9
2.2 printf输出整数或字符11
2.3 输入的格式配对错误12
2.4 空格让scanf莫名其妙14
2.5 回车键打乱scanf的阵脚15
2.6 字符输入要搞特殊化15
2.7 别混淆字符数组和字符17
2.8 一维数组更要特殊对待19
2.9 输出值的操作符20
2.10 引入指针更方便23
2.11 指针的困惑24
第3章 基本数据类型26
3.1 混合运算要小心26
3.2 数据类型的后缀符号28
3.3 基本数据的初始化28
3.4 注意编译系统的差别29
3.5 不要用错等于运算符30
3.6 不要用错逗号运算符31
第4章 程序控制语句34
4.1 控制流程运算容易出现的问题34
4.1.1 写错关系运算符34
4.1.2 混淆表达式和关系表达式的值36
4.1.3 混淆逻辑表达式和逻辑表达式的值37
4.1.4 混淆逻辑运算符和位运算符38
4.2 程序控制语句容易出现的问题39
4.2.1 条件分支语句的错误39
4.2.2 控制重复的分支语句44
4.2.3 运算符优先级错误53
4.2.4 求值顺序55
第5章 数组与指针是重点58
5.1 一维数组越界和初始化错误58
5.1.1 一维数组越界错误58
5.1.2 一维数组初始化错误60
5.2 数组赋值错误61
5.3 指针地址的有效性64
5.4 配合使用一维数组与指针69
5.4.1 使用一维数组名简化操作69
5.4.2 使用指针操作一维数组71
5.4.3 使用一维字符数组78
5.4.4 不要忘记指针初始化79
5.5 多维数组与指针81
5.5.1 数组操作及越界和初始化错误81
5.5.2 二维数组与指针85
5.5.3 二维数组与指向一维数组的指针89
第6章 函数是核心91
6.1 函数的声明与定义91
6.2 函数变量的作用域93
6.3 函数变量类型的匹配95
6.4 函数的返回路径95
6.5 函数参数的设计及传递96
6.6 传递指针不一定改变原来参数的值98
6.7 函数的返回值99
6.7.1 无返回值的void类型函数100
6.7.2 函数返回值问题102
第7章 宏与const106
7.1 用const代替无参数的宏定义106
7.2 有参数的宏定义109
第8章 库函数112
8.1 引用的库函数与头文件不匹配112
8.2 与库函数的参数类型不匹配113
8.3 对库函数的作用理解不对114
8.4 充分利用库函数printf的功能118
8.4.1 printf的函数原型119
8.4.2 printf函数的格式控制符120
第9章 结构134
9.1 结构定义和赋值错误134
9.2 结构作为函数参数及函数的返回值140
9.3 使用结构数组和指针容易出现的错误145
9.4 其他注意事项147
第10章 联合与枚举148
10.1 联合148
10.2 枚举153
第11章 状态机159
第二篇 C语言编程中的好与坏170
第12章 注意编译系统的差别170
12.1 打开所有编译开关170
12.2 克服依靠编译系统产生的错误170
第13章 测试与调试程序174
13.1 预防措施174
13.1.1 书写格式和注意事项174
13.1.2 命名注意事项176
13.1.3 程序注释178
13.2 使用条件编译180
13.3 消灭警告信息183
13.4 使用简单的输出信息调试程序185
13.5 编写error函数194
13.6 使用集成环境提供的调试手段197
13.6.1 一个简单的实例197
13.6.2 编译程序198
13.6.3 排错199
13.6.4 基本调试命令简介200
13.6.5 程序与汇编调试窗口203
13.7 调试程序实例204
13.8 软件测试206
13.8.1 模块测试209
13.8.2 组装测试211
13.8.3 确认测试211
13.9 程序的测试与调试212
13.10 测试用例设计技术214
13.10.1 逻辑覆盖法215
13.10.2 等价划分法218
13.10.3 边值分析法219
13.10.4 因果图法219
13.10.5 错误猜测法220
第14章 正确使用变量、常量和指针221
14.1 基本数据类型的变量初始化221
14.2 不要混淆字符和字符串222
14.3 指针的初始化224
14.4 指针相等228
14.5 使用const232
14.5.1 左值和右值232
14.5.2 推荐使用const定义常量234
14.5.3 对函数传递参数使用const限定符236
14.5.4 对指针使用const限定符237
14.6 使用volatile变量240
14.7 变量的存储地址分配242
第15章 正确使用宏246
15.1 不要使用不存在的运算符246
15.2 正确使用定义的宏247
15.3 正确定义宏的参数248
15.4 使用宏定义函数250
第16章 控制语句252
16.1 运算顺序错误252
16.2 采用更明确的条件254
16.3 设计存在的问题256
16.3.1 没有涵盖全部条件256
16.3.2 条件超出范围261
16.3.3 减少循环次数264
16.4 正确选择运算符273
16.5 优先级和求值顺序错误277
第17章 位运算285
17.1 位运算典型错误285
17.2 位运算典型实例290
第18章 再论数组与指针295
18.1 一维数值数组和指针295
18.1.1 使用数组偏移量造成数组越界295
18.1.2 使用数组名进行错误运算296
18.1.3 错误使用数组下标和指向数组指针的下标298
18.1.4 小结299
18.2 一维字符数组和指针301
18.2.1 字符数组的偏移量301
1 8.2.2 字符数组不对称编程综合实例303
18.3 动态内存307
18.3.1 非数组的指针307
18.3.2 NULL指针309
18.4 二维数组和指针310
18.4.1 二维数组的界限310
18.4.2 二维数组的一维特性312
18.4.3 指向二维数组的指针314
18.5 数组和指针应用实例318
第19章 再论函数325
19.1 函数变量的作用域325
19.1.1 块结构之间的变量屏蔽规则325
19.1.2 程序和文件内的变量328
19.1.3 多文件变量作用域331
19.2 函数的参数337
19.2.1 完璧归赵338
19.2.2 多余的参数340
19.2.3 传递的参数与函数参数匹配问题342
19.2.4 等效替换参数345
19.3 函数的类型和返回值347
19.3.1 函数的类型力求简单347
19.3.2 实参要与函数形参的类型匹配349
19.3.3 正确设计函数的返回方式351
19.3.4 正确设计和使用函数指针356
19.3.5 如何解读函数声明361
第20章 再论库函数365
20.1 getchar函数的返回类型不是字符365
20.2 setbuf函数与其他函数的配合368
20.3 错误使用errno函数377
20.4 模拟设计printf函数379
20.4.1 具有可变参数的函数379
20.4.2 设计简单的打印函数382
20.4.3 利用宏改进打印函数387
20.5 scanf和sscanf函数392
20.5.1 sscanf函数的使用方法394
20.5.2 sscanf函数用法举例395
20.6 探讨printt函数398
第21章 再论结构400
21.1 同类型结构变量之间的整体赋值400
21.2 使用键盘赋值405
21.2.1 为结构变量赋值405
21.2.2 为结构指针变量赋值407
21.2.3 为链表赋值411
21.2.4 为结构数组的变量赋值412
21.2.5 为含有指针域的结构数组赋值413
21.3 使用结构作为函数的参数417
21.3.1 结构变量的传数值与传地址值417
21.3.2 结构数组传地址值418
21.4 结构函数的返回值421
21.5 修改传递的结构参数的值430
21.6 优先使用结构指针传递参数435
第22章 使用文件常见错误分析439
22.1 文件的打开与关闭439
22.2 文件的读写450
22.3 其他读写函数464
22.4 文件的定位467
22.5 操作出错检测及错误标志的复位469
22.6 文件的内存分配470
22.7 小结470
第23章 多文件编程472
23.1 多文件编程错误浅析472
23.2 单文件结构475
23.3 一个源文件和一个头文件475
23.4 多文件结构477
第24章 发布C程序483
24.1 两种版本的异同483
24.2 两种版本的设置484
第25章 典型问题486
25.1 计算机解题具有多解的特点486
25.2 应对算法进行优化487
25.3 优化时要避免出现新的错误488
25.4 扩展程序要注意是否满足全部条件494
25.5 注意函数设计的多样化和效率496
25.6 使用多文件编程502
25.7 使用状态机设计程序507
附录A C语言操作符的优先级513
附录B 简化优先级记忆口诀515
附录C 7位ASCII代码表517
主要参考文献518
热门推荐
- 1105669.html
- 2923641.html
- 887894.html
- 2428793.html
- 2422651.html
- 3448364.html
- 2583936.html
- 1282516.html
- 1079701.html
- 2344666.html
- http://www.ickdjs.cc/book_51612.html
- http://www.ickdjs.cc/book_2545267.html
- http://www.ickdjs.cc/book_1512776.html
- http://www.ickdjs.cc/book_2727226.html
- http://www.ickdjs.cc/book_3389588.html
- http://www.ickdjs.cc/book_273048.html
- http://www.ickdjs.cc/book_2287296.html
- http://www.ickdjs.cc/book_956184.html
- http://www.ickdjs.cc/book_562559.html
- http://www.ickdjs.cc/book_1840240.html