我们知道这sizeof
是一个用于计算任何数据类型和表达式大小的运算符,当操作数是一个表达式时,括号可以省略。
int main()
{
int a;
sizeof int;
sizeof( int );
sizeof a;
sizeof( a );
return 0;
}
的第一个用法sizeof
是错误的,而其他用法是正确的。
使用 gcc 编译时,会出现以下错误信息:
main.c:5:9: error: expected expression before ‘int’
我的问题是为什么 C 标准不允许这种操作。会不会sizeof int
造成歧义?