常量 '3' 的数据类型是( )。
看到单引号就要立刻反应是字符常量,别被里面的数字带跑。'3' 是字符 '3',不是数字 3,类型自然是 char。
最容易栽在惯性思维上,看见数字就默认是 int,完全忽略了引号的作用。另外要注意双引号和单引号的区别,双引号是字符串,单引号才是字符。还有 bool 类型只有 true 和 false 两个字面量,'3' 这种数字字符永远不可能变成 bool。
GESP 一级 C++ 组,考查基本数据类型中的字符常量。命题人专门挖了个坑:把数字 3 放进单引号里,就是想测试你是不是真的懂“引号决定类型”这个铁律。
在 C++ 里,常量分好几种,判断类型的关键全看引号:
3 是整型常量,类型是 int;"3" 是字符串常量,类型是 string;'3' 是字符常量,类型是 char。字符常量在内存里存的是它的 ASCII 码('3' 对应 51),但它的类型依然是 char,这点要分清楚。
拿到题先别急着看选项,先看题干里的 '3'。脑子里立刻弹出“字符常量”四个字,就能排除所有非字符的选项。
'3' 不是数字 3,是字符 '3'。命题人故意用数字内容混淆视听,让你惯性思维选错。true 和 false 两个字面量,'3' 这种数字字符永远不可能被识别为布尔值。'3' 是整数字符,除非写成 '3.0'(语法错误)或者用后缀 3.0,否则绝不可能是 double。“变量与常量”这个点在题库里考得很多,共 77 题,覆盖 5 个级别,其中 GESP 一级就占了 40 题,说明一级考生非常需要夯实这个基础。“基本数据类型”更是高频考点,共 267 题,GESP 一级考了 81 题,占比极高。从 2023 年到 2026 年,这个考点的考频呈上升趋势,尤其是 2026 年达到了 119 题,说明命题人越来越喜欢在这个点上下手挖坑。
基于数据,未来 GESP 一级、二级甚至四级大概率还会继续考“字符与数字的区分”“单双引号的语法差异”这类题目,形式可能是单选,也可能是代码填空让写字符常量。只要记住“单引号锁定 char,双引号锁定 string,无引号锁定 int”这三句口诀,这类题基本不会丢分。