24 条题解
-
0
好的,同学!这道题是 C++ 入门的一个“必考点”,也是一个非常容易让人凭直觉犯错的“小陷阱”。我们一起来看看这个小小的单引号到底有什么魔力。
3. 常量'3'的数据类型是 () 。
- A. double
- B. float
- C. char
- D. int
启发式讲解
在 C++ 这个世界里,编译器(就是那个帮你检查和翻译代码的“语法老师”)看到不同的东西,会给它们贴上不同的“身份标签”(也就是数据类型)。
我们来看三个长得很像,但身份完全不同的“兄弟”:
-
3(光秃秃的数字)- 当你直接写一个数字
3时,语法老师会认为:“哦,这是一个用来做数学计算的整数。” - 所以,
3的身份标签是int。
- 当你直接写一个数字
-
3.0(带小数点的数字)- 当你写一个
3.0时,语法老师会认为:“这是一个可以有小数的浮点数。” - 所以,
3.0的身份标签是double。
- 当你写一个
-
'3'(被单引号包围的)- 教练提醒(敲黑板!): 单引号
''在 C++ 里就像一个魔法咒语!它会把它包围起来的东西变成一个字符 (character)。 - 当语法老师看到
'3'时,他不会认为这是数字三。他会认为:“这是一个符号,一个长得像'3'的图案,就像键盘上的'A'、'b'、'#'一样。” - 在 C++ 里,专门用来存放这种单个符号的“小盒子”,就是
char类型。
- 教练提醒(敲黑板!): 单引号
我们来做一个思想实验:
3 + 1的结果是什么?是4。这是数学运算。'3' + 1的结果是什么?电脑不认识符号'3',它只认识数字。所以它会去查'3'这个符号的“身份证号”(也就是 ASCII码),发现是51。然后计算51 + 1,结果是52!
看到了吗?
3和'3'在电脑眼里,是完完全全不同的两个东西!结论
因为
'3'被单引号包围,所以它是一个字符常量,它的数据类型是char。因此,正确答案是 C. char。
一句话总结:在C++里,单引号
''是char类型的专属“身份证”,看到它就想到char!
信息
- ID
- 4778
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 2
- 已通过
- 1
- 上传者