C中的sizeof(char)给出1,sizeof("a")给出2.请帮助
甲char
即字符有尺寸1.
该字符串文字 "a"
是不是一个字符.它是一个"字符串"(我的意思是字符串char[]
).C中的所有"字符串"都以null结尾,因此您的"字符串"实际上是:
{'a','\0'}
那是两个角色.所以大小是2.
sizeof("a")
"a"
是一个读取的字符串{'a','\0'}
,它是2个字符或2个字节.这是因为在C中,双引号表示字符串.C中的字符串必须以空值终止.
sizeof(char)
保证单个字符的大小为1个字节.