编写程序:
# include <stdio.h> # include <stdlib.h> int main(void) { printf("char的长度为%d\n",sizeof(char)); //结果: 1 printf("int的长度为%d\n",sizeof(int)); //结果: 4 printf("float的长度为%d\n",sizeof(float)); //结果: 4 printf("double的长度为%d\n",sizeof(double)); //结果: 8 printf("long的长度为%d\n",sizeof(long)); //结果: 4 printf("short的长度为%d\n",sizeof(short)); //结果: 2 //signed ,unsigned数据类型的修饰符 //signed int; 代表有符号的int的数据 //unsigned int: 代表无符号的int数据 printf("signed int的长度为%d\n",sizeof(signed int)); //结果: 4 printf("unsigned int的长度为%d\n",sizeof(long int)); //结果: 4 system("pause"); //符号的修饰符 只能修饰 整数类型的数据 long int //不能修饰 浮点型的数据 float double }
由此可见,int和long都是占用4个字节,他们有什么区别呢?在c99语法中他们都是4个字节,在别的语法中,可能long的字节要长点。long的长度肯定不会比int的短,官文文档说,long一定不会比int短。