反馈 / 投诉
-
《C语言解惑》配套软件
2022-04-06 10:05:39 类别:C语言
-
扫二维码手机浏览
资源介绍
给大家整理一篇C语言类书籍配套资源,介绍了关于C语言、配套软件、C语言方面的内容,本书是由机械工业出版社出版,已被734人关注,由许罗绮测试纠错,目前本书在C语言类综合评分为:7.2分。
本书分为上下两篇,上篇介绍了C语言程序设计中经常遇到的典型错误,其中不乏编程高手也经常会出现的错误。下篇主要从程序的质量出发,针对能够运行但质量不佳的程序或者设计方法,提出改进的建议。使读者完成从会编程到编出好程序的转变。
封面图
目录
- 前言
- 第一篇C语言编程中的对与错
- 第1章初涉C语言者的困惑2
- 1.1中文字符以假乱真2
- 1.2象形字体扰乱视听3
- 1.3都是注释惹的祸4
- 1.4千万不要忘记我4
- 1.5别把分号放错地方4
- 1.6少了花括号就是行不通6
- 1.7scanf要“&”不要“\n”6
- 1.8老大就是要在最前面6
- 1.9记住我就会受益无穷7
- 第2章用好printf和scanf一对活宝9
- 2.1printf输出的小奥妙9
- 2.2printf输出整数或字符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.1printf的函数原型119
- 8.4.2printf函数的格式控制符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语言编程中的好与坏
- 第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
- 18.2.2字符数组不对称编程综合实例303
- 18.3动态内存307
- 18.3.1非数组的指针307
- 18.3.2NULL指针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.1getchar函数的返回类型不是字符365
- 20.2setbuf函数与其他函数的配合368
- 20.3错误使用errno函数377
- 20.4模拟设计printf函数379
- 20.4.1具有可变参数的函数379
- 20.4.2设计简单的打印函数382
- 20.4.3利用宏改进打印函数387
- 20.5scanf和sscanf函数392
- 20.5.1sscanf函数的使用方法394
- 20.5.2sscanf函数用法举例395
- 20.6探讨printf函数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
- 附录AC语言操作符的优先级513
- 附录B简化优先级记忆口诀515
- 附录C7位ASCII代码表517
- 主要参考文献518
以上就是本次关于配套资源的介绍和部分内容,我们还整理了以往更新的其它相关电子书资源内容,可以在下方直接下载,关于相关的资源我们在下方做了关联展示,需要的朋友们也可以参考下。
- 上一篇:《C#多线程编程实战》源代码
- 下一篇:《程序设计解题策略》素材
下载地址
下载地址:网盘下载
C语言相关资源
学习心得
欢迎发表评论:
- 最新更新
-
1
Java编程实战宝典 PDF电子书
类别:Java编程
-
2
自然语言处理原理与技术实现 PDF电子书
类别:自然语言
-
3
Vert.x应用开发实例教程 PDF电子书
类别:Vert.x
-
4
深入理解php:高级技巧、面向对象与核心技术(第3版) PDF电子书
类别:php
-
5
PHP经典实例(第3版) PDF电子书
类别:PHP实例
-
6
Django开发宝典 PDF电子书
类别:Django
-
7
Learning PHP设计模式 PDF电子书
类别:PHP编程
-
8
Java高并发编程详解:多线程与架构设计 PDF电子书
类别:Java编程
-
9
教孩子学编程:Python语言版 PDF电子书
类别:儿童编程
- 资料推荐
-
- 04-05《R语言数据分析与挖掘实战》图书配套资料
- 12-28精通HTML5+CSS3+JavaScript网页设计 PDF电子书
- 05-06《Wireshark网络分析就这么简单》配套彩图
- 11-25零基础学C语言 PDF电子书
- 08-12Android系统源代码分析 PDF电子书
- 12-25机器学习 课后答案
- 04-16技术员面试知识点整理 编程资源
- 05-14JavaEE企业级分布式高级架构师 编程资源
- 02-09minapp API 文档 PDF文档
- 07-27清华大学学堂在线C++基础学习 编程资源
深入聊聊C语言中的Const关键字
前言 const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程序上可以提高程序的健壮性,另外,在观看别人代码的时候,清晰理解const所起的作用,对理解别人的程序有所帮助。 01const简述 下面简单描述一下const,基本都是教科书的知识。const修饰的变量,其值存放在只读数据段中,其值不能被改变。称为只读变量。关于什么是数据段,什么是代码段,请看我……
C语言实现红黑树的实例代码
因为看内核的时候感觉红黑树挺有意思的,所以利用周末的时间来实现一下玩玩。红黑树的操作主要是插入和删除,而删除的时候需要考虑的情况更多一些。具体的操作就不在这里罗嗦了,百度文库里面有一个比较有好的文章,已经说的很明白了。 在看具体的操作的时候有的人可能感觉有些情况是没有考虑到的(如果没有这种感觉的人很有可能根本没有仔细地想)。但是那些“……
C语言位段(位域)机制结构体的特殊实现及解析
概念 什么是位段? 位段又称为位域,C语言允许在一个结构体中以位为单位来指定其成员所占内存长度,这种以位为单位的成员就叫做称为位段( bit field) 。利用位段能够用较少的位数存储数据达到节省空间的目的。 位段是结构体特有的,所以声明是和结构是类似的,但有两个不同: 1. 位段成员必须是 int ,unsigned int,signed int 2. 位段成员名后边结构包括一个冒号和整型数字 举个……