GESP 一级 · GESP 202506 C++ 一级 第 24 题

判断题 · 答案 A

← 整套速查表 GESP 一级 全部真题

题目

在 C++ 代码中,不可以将变量命名为 false,因为 false 是 C++ 语言的关键字。( )

答案:A

解题思维

答案A。cout不是C++关键字,它是iostream中定义的对象。int、for、do、if、else、return、case等都是关键字。

常见错误

cout、cin、endl不是关键字,是iostream中定义的对象。关键字是语言本身预定义的保留词。

详细解析(节选)

【考点】关键字|标识符|布尔字面量

1. 🎯 考纲定位 在 GESP 一级 C++ 大纲第 4 章"标识符与关键字"模块,本题卡住绝大多数考生的"关键字意识"薄弱点。一级学生普遍将布尔字面量误作普通变量,导致编译错误,命题人正是利用这一认知盲区。

2. 🧠 解题思维 看到题先判断 false 是否属于 C++ 标准保留字。依据 C++ 语言规范,false、true、nullptr 均不可用作标识符。推理链:false 是关键字 → 关键字不能用作变量名 → 命题正确。通法:遇到"能否命名"题,先查语言规范,再结合关键字列表判断。

3. 🪤 陷阱拆解 错误选项 B 利用考生对"false 作为布尔值"的熟悉,误以为它只是常量而非关键字。题目中最阴险的细节是"不可以将变量命名为 false",考生可能忽略"变量命名"这个前提,只关注 false 本身。如果你只背结论"false 是布尔值",不理解关键字的本质,就会掉进这个陷阱。

4. 🔄 反命题思维 站在命题人视角,如果把这道题改一个条件,比如"false 可以作为函数名吗?"答案仍为正确,因为关键字在任何标识符位置都保留。或者换考法:"bool 是关键字,true 不是,对吗?"答案错误,因为 true 也是关键字。一句话提醒:刷到类似题时,先问自己"命题人想考我什么"——是考关键字列表,还是考布尔字面量的值?

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断