一).sizeof运算符
sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。sizeof操作符以字节形式给 出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小 由操作数的类型决定。
用法:sizeof(常量/变量)
1)用于数据类型
sizeof使用形式:sizeof(type) 数据类型必须用括号括住。如sizeof(int)。
2)用于常量(可以省略括号)
int size = sizeof(1); size = sizeof(1.1); size = sizeof(1.1f); size = sizeof('a'); //4
当sizeof后面的操作数是常量或是变量那么后面小阔号是可以省略的
size = sizeof 1;
3)用于变量(可以省略括号)
sizeof使用形式:sizeof(var_name)或sizeof var_name 变量名可以不用括号括住。如sizeof (var_name),sizeof var_name等都是正确形式。带括号的 用法更普遍,大多数程序员采用这种形式。
char a;
size = sizeof(a);
size = sizeof a; //省略了括号
区分:
//------
char a;
printf("%lu",sizeof(a));
//-------
printf("%lu",sizeof(char);
//-------
printf("%lu",sizeof('a'));
注意:
sizeof操作符不能用于函数类型,不完全类型或位字段。不完全类型指具有未知存储大小的数据 类型,如未知存储大小的数组类型、未知内容的结构或联合类型、void类型等。 |
|