‘a’不是应该是int类型吗?求大侠解惑。
#include <stdio.h> /*编译预处理命令 标准输入输出头文件 */#include <stdlib.h> /*编译预处理命令 标准库头文件 */
int main(void) /* 主函数 */
{
char c;/* 定义c为字符变量 */
printf("%d %d %d\n", sizeof 'a' , sizeof (char) , sizeof c );/* 输出三个值并换行 */
system("PAUSE"); /* 从程序中调用“PAUSE”命令 */
return 0; /* 返回0值 */
}
运行结果是
1 1 1
预想的结果是
4 1 1
‘a’不是应该是int类型吗?值应该是 4 啊,为何会是 1 呢?哪位大侠帮忙解解惑。