C语言合法的字符常数

A:“\t"
B:’\n'
C:'48'
D:"\30"
求助C为什么是错的

这题选 B.

所谓字符,在 C 语言中即表现为 char 型。

A 答案是双引用,其实是一个字符串,它有两个元素,'\t' 和 '\0';

B 答案是正确的;

C 答案在单引号中有 2 个字符,在 C 语言中是不允许的,单引号中的内容只允许了一个字符,或转义字符;或者使用 ASCII 码数值也可以,去掉单引号就是正确的了。

D 答案与 A 类似,使用双引号的话,最后一定会有一个 '\0', 所以并不是字符。

举几个正确的例子吧:

char c;
c = '0';        // 正确,使用单引号括起来的字符
c = '\t';       // 正确,使用单引号括起来的转义字符
c = 97;         // 正确,使用 ASCII 码值,通过查表可以其等于 'a'

温馨提示:答案为网友推荐,仅供参考