运行以下代码:
int main()
{
int a = sizeof(signed) + sizeof(unsigned);
int b = sizeof(const) + sizeof(volatile);
printf("%d",a+++b);
return 0;
}
在 Visual C++ 中,我得到的输出为 16。默认数据类型是 signed
、unsigned
、const
和 volatile
被认为是 int
?
最佳答案
不仅仅是这些限定符,C语言的默认类型是int。因此,如果您不在某处指定数据类型,编译器将假定为 int。
例如,如果你不声明一个函数并使用它,编译器会给你一个警告并假定该函数返回 int。
关于c - 默认类型 signed、unsigned、const 和 volatile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12640015/