本讲定位:纯概念课,但客观题分值极高。官方大纲知识块 5「程序的基本概念」列了七样东西——标识符、关键字、常量、变量、表达式、命名与定义、程序的注释——一级真题里每次都会命中 2–3 道选择或判断,而且题型高度固定(“下列哪个是合法的标识符”几乎年年出现)。这一讲代码量最少,背诵量最大,也是提分性价比最高的一讲。
对应官方大纲:一级知识块 5「程序的基本概念」——标识符、关键字、常量、变量、表达式的概念;常量与变量的命名、定义、作用;程序的注释。
前置知识:一级第 02 讲(会用
cin/cout写出能跑的顺序结构程序)。代码说明:本讲所有代码均已用 g++ 11.5(
-std=c++11)编译运行验证,输出结果即为文中标注结果。
第一道(单选,一级年年出):
下列选项中,不是合法的 C++ 标识符的是( ) A.
_scoreB.Score2C.2scoreD.score_2
第二道(判断):
在 C++ 中,
main是关键字。( )
第一道是套路题,会规则就能秒杀。第二道则是几乎所有学生都会答错的题——它看起来那么像关键字。
答案:第一道选 C,第二道错误。
2score 以数字开头,不合法。main 不是关键字,它只是一个普通的标识符,只不过被约定为程序入口的名字。真正的关键字是 int、if、return 这些。这一讲就是把这套规则一次背熟。
标识符就是程序员自己起的名字——变量名、函数名、数组名统统都是标识符。
int score; // score 是标识符
int max_num; // max_num 是标识符
只有三条硬规则:
| # | 规则 | 说明 |
|---|---|---|
| ① | 只能由字母、数字、下划线 _ 三种字符组成 |
不能有空格、-、+、#、@、$,不能有中文 |
| ② | 不能以数字开头 | 第一个字符必须是字母或下划线 |
| ③ | 不能与关键字同名 | 不能叫 int、if、return |
外加一条必须知道的性质: