sizeof运算符是C语言中最常见的运算符。它是编译时一元运算符,用于计算其操作数的大小。它返回变量的大小。它可以应用于任何数据类型,浮点类型,指针类型变量。
当sizeof()与数据类型一起使用时,它仅返回分配给该数据类型的内存量。在不同的机器上,输出可能不同,例如32位系统可以显示不同的输出,而64位系统可以显示不同的相同数据类型。
这是C语言的示例,
#include <stdio.h> int main() { int a = 16; printf("Size of variable a : %d\n",sizeof(a)); printf("Size of int data type : %d\n",sizeof(int)); printf("Size of char data type : %d\n",sizeof(char)); printf("Size of float data type : %d\n",sizeof(float)); printf("Size of double data type : %d\n",sizeof(double)); return 0; }
输出结果
Size of variable a : 4 Size of int data type : 4 Size of char data type : 1 Size of float data type : 4 Size of double data type : 8
当sizeof()与表达式一起使用时,它将返回表达式的大小。这是一个例子。
#include <stdio.h> int main() { char a = 'S'; double b = 4.65; printf("Size of variable a : %d\n",sizeof(a)); printf("Size of an expression : %d\n",sizeof(a+b)); int s = (int)(a+b); printf("Size of explicitly converted expression : %d\n",sizeof(s)); return 0; }
输出结果
Size of variable a : 1 Size of an expression : 8 Size of explicitly converted expression : 4