- 2
- 0
- 约2.04万字
- 约 17页
- 2016-09-19 发布于重庆
- 举报
C语言缺陷和陷阱
C语言缺陷与陷阱(笔记)
C语言像一把雕刻刀,锋利,并且在技师手中非常有用。和任何锋利的工具一样,C会伤到那些不能掌握它的人。本文介绍C语言伤害粗心的人的方法,以及如何避免伤害。
第一部分研究了当程序被划分为记号时会发生的问题。第二部分继续研究了当程序的记号被编译器组合为声明、表达式和语句时会出现的问题。第三部分研究了由多个部分组成、分别编译并绑定到一起的C程序。第四部分处理了概念上的误解:当一个程序具体执行时会发生的事情。第五部分研究了我们的程序和它们所使用的常用库之间的关系。在第六部分中,我们注意到了我们所写的程序也许并不是我们所运行的程序;预处理器将首先运行。最后,第七部分讨论了可移植性问题:一个能在一个实现中运行的程序无法在另一个实现中运行的原因。
词法分析器(lexical analyzer):检查组成程序的字符序列,并将它们划分为记号(token)一个记号是一个由一个或多个字符构成的序列,它在语言被编译时具有一个(相关地)统一的意义。
C程序被两次划分为记号,首先是预处理器读取程序,它必须对程序进行记号划分以发现标识宏的标识符。通过对每个宏进行求值来替换宏调用,最后,经过宏替换的程序又被汇集成字符流送给编译器。编译器再第二次将这个流划分为记号。
1.1= 不是 ==:C语言则是用=表示赋值而用==表示比较。这是因为赋值的频率要高于比较,因此为其分配更短的符号。C还将赋值
您可能关注的文档
- CWY参数稳压器.doc
- CW型磁力漩涡泵产品特点.doc
- 5高处作业吊篮检测作业指导书.doc
- CX-KZX95-Ⅱ开关柜智能操显装置.docx
- 6---matlab---对矩阵中元素的操作.doc
- CX-QPL-履带式抛丸机,广东抛丸机厂家,抛丸机配件.doc
- 6--用天平称液体的质量.doc
- CX0712B柴油滤清器玉柴6108油水分离器金龙大巴.docx
- CX16-2007应急准备与响应控制程序.doc
- CX4000A,6000A系列产品样本文字部分.doc
- 2026年智慧健康管理系统创新报告.docx
- 河北衡水市武强中学2025-2026学年高二下学期4月期中物理试题(含解析).docx
- 2026年人工智能行业智能老年防走失定位器创新报告.docx
- 2026年低空经济飞行器量子技术应用创新报告.docx
- 2026年农业智能农业智能育种创新报告.docx
- 河北省保定市莲池区保定市第一中学2025-2026学年高二下学期期中考试生物试题(含解析).docx
- 2026年智慧城市电子站牌充电创新报告.docx
- 河北省邯郸市平恩中学等校2025-2026学年八年级期中考试英语试题(含解析).docx
- 2026年供应链创新技术应用报告.docx
- 2026年体育智能赛事管理系统支付系统创新报告.docx
原创力文档

文档评论(0)