标签: c sizeof
可能重复: Size of character ('a') in C/C++
为什么这个程序输出4而不是1?
void main() { printf("%d",int(sizeof('z'))); }
'z'是一个字符,sizeof('z')必须打印1?
sizeof('z')
答案 0 :(得分:8)
'z'是字符文字,在C中,字符文字的类型为int。因此sizeof('z')等于sizeof(int)您的实施。
'z'
int
sizeof(int)
答案 1 :(得分:8)
Sizeof char
也许令人惊讶的是,角色 C中的常量是int 类型,所以 sizeof('a')为sizeof(int)
sizeof('a')