#include <stdio.h>
int main()
{
const register int i = 0;
printf("%d, %d\n", sizeof(const register int), sizeof(i));
return 0;
}问题:编译不过!原因是,第一个sizeof测试类型的大小 类型的本质是创建变量的模子,编译器通过类型在内存中“咔”出变量的莫子,
那么register是指的寄存器变量 从编译器的角度 不是模子的范畴 所以第一个编译不过
但是第二个可以编译通过的 原因是第二个sizeof是测试变量的大小 这指明了类型是int其是register 所以编译器知道如果这个变量创建出来了只会是4个字节

被折叠的 条评论
为什么被折叠?



