3. 基本概念
本章负责把后续内容反复依赖的术语先统一起来:对象、类型、翻译单元、作用域、行为分类、执行环境。它看起来偏“定义”,但真正作用是给你一套稳定坐标系,帮助你在阅读语法细节时始终知道“这条规则约束的到底是什么”。
可暂时跳过本章
如果你现在更想先上手编码,可以先浏览每节标题,再继续后面的语法章节。遇到“为什么是这个结果”或“为什么这段代码不可靠”这类问题时,再回到本章按顺序精读,效果通常更好。
1. 本章主线
我们先从 3.1 注释 开始,区分“给编译器看的语法”与“给读者看的说明”。随后进入 3.2 对象,明确 C 语言里的对象不是面向对象术语,而是可存储数据的区域;它的规则由 3.2.1 类型 与 3.2.2 声明和初始化 进一步展开。
在此基础上,3.3 遵从性和行为 会给出标准层面的行为边界,解释实现定义行为、未指定行为与未定义行为之间的区别。接着通过 3.4 翻译单元 与 3.5 翻译阶段 把“源代码到可执行程序”的路径串起来,避免把预处理、编译和链接混为一层。
然后是名字系统:在 3.6 标识符 中你会看到命名和可见范围的规则,其中 3.6.1 保留标识符 解释哪些名字不应由用户代码占用,3.6.2 作用域 解释名字在源码中的可见区间。最后通过 3.7 ASCII 码 与 3.8 环境 收束到“字符表示”和“程序运行前提”。
2. 阅读方式建议
这一章最适合配合后续章节来回查阅:写表达式时回看对象与类型,处理宏问题时回看翻译阶段,定位跨平台差异时回看行为分类和环境。只要把这些概念当作统一语言,后面看到的大多数语法规则都会更容易理解。
习题
本章没有习题。