引言 1
目录 1
第一章 易犯的词法错误 4
§1.1 =不是== 4
§1.2 和|不是 或|| 5
§1.3 贪婪的词法分析 6
§1.4 整型常数 7
§1.5 串与字符 7
第二章 易犯的语法错误 9
§2.1 理解函数说明 9
§2.2 运算符并不总是具有您想要的优先级 12
§2.3 注意那些分号 14
§2.4 switch语句 16
§2.5 调用函数 17
§2.6 悬挂着的else问题 18
§3.1 指针与数组 20
第三章 易犯的语义错误 20
§3.2 指针不是数组 24
§3.3 数组说明作为参数 25
§3.4 避免提喻法 26
§3.5 空指针不是空字符串 27
§3.6 计数和不对称的边界 27
§3.7 求值的顺序 35
§3.8 、||与!运算符 37
§3.9 整数溢出 38
§3.10 从main函数返回一个信 38
第四章 连接 41
§4.1 什么是连接器? 41
§4.2 说明与定义 42
§4.3 名字冲突与static修饰语 43
§4.4 自变量、参数与返回值 44
§4.5 检查外部类型 49
§4.6 头文件 51
第五章 库函数 53
§5.1 getchar返回一个整数 53
§5.2 更新一个顺序文件 54
§5.3 缓冲输出与内存分配 55
§5.4 errno用于错误检测 56
§5.5 signal函数 57
第六章 预处理器 59
§6.1 在宏定义中的空格问题 59
§6.2 宏不是函数 60
§6.3 宏不是语句 62
§6.4 宏不是类型定义 64
第七章 易犯的可移植性错误 65
§7.1 处理变化 65
§7.2 在一个名字里是什么? 67
§7.4 字符是有符号的还是无符号的? 68
§7.3 一个整数有多大? 68
§7.5 移位运算符 69
§7.6 第零号内存单元 70
§7.7 除法是怎样截断的? 70
§7.8 一个随机数有多大? 71
§7.9 大小写转换 72
§7.10 先释放,然后再重新分配? 73
§7.11 可移植性问题的一个例子 74
第八章 劝告与答案 77
§8.1 劝告 77
§8.2 答案 80
附录A PRINTF、VARARGS与STDARG 94
A.1 printf家族 94
A.2 使用varargs.h的可变的自变量表 104
A.3 stdarg.h:ANSI的varargs.h 108
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等学校“十三五”规划教材 C语言程序设计》翟玉峰责任编辑;(中国)李聪,曾志华,江伟 2019
- 《改革进程中的刑事诉讼程序与证据问题研究 基于警察的视角》谢波 2019
- 《Java程序设计基础》罗刚 2018
- 《C++程序设计实验指导 第2版》张潇责任编辑;孟桂娥 2019
- 《C程序设计教程 第3版》林小茶,陈昕 2018
- 《Java语言程序设计教程》胡光 2018
- 《C语言程序设计》黑新宏,胡元义主编 2019
- 《C++语言程序设计习题与实验指导》姚雅鹃,石礼娟 2018
- 《内部行政程序研究》罗许生 2019
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《家》高铁林,王力军文;胡博综图 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《本草经解彩色药图》云雪林,杨碧仙主编 2019
- 《景观艺术设计》林春水,马俊 2019
- 《《鬼谷子》思想新解 上》林仁政著 2015
- 《新闻心理学概论 第6版》刘京林 2019
- 《梦之海》陈晓丹,温慧责编;(法)科琳娜·蓓尔特兰德总主编;韦斯林,(乌拉圭)马格努译者;(乌拉圭)兰道尔夫-桑图里奥改编;(阿根廷)乔克绘画;刘慈欣 2020
- 《C程序设计教程 第3版》林小茶,陈昕 2018
- 《中药炮制学实验》陆兔林主编 2018