C int 关键字
定义和用法
int
关键字是一种数据类型,用于存储整数。大多数实现会给 int
类型分配 32 位(4 字节),但有些实现只分配 16 位(2 字节)。
在 16 位的情况下,它可以存储范围在 -32768 到 32767 之间的正数和负数,或者当为无符号类型时,存储范围在 0 到 65535 之间的数。
在 32 位的情况下,它可以存储范围在 -2147483648 到 2147483647 之间的正数和负数,或者当为无符号类型时,存储范围在 0 到 4294967295 之间的数。
修饰符
int
的大小可以通过 short
和 long
修饰符来修改。
short
关键字确保最大为 16 位。
long
关键字确保至少为 32 位,但可能扩展到 64 位。long long
确保至少为 64 位。
64 位可以存储范围在 -9223372036854775808 到 9223372036854775807 之间的正数和负数,或者当为无符号类型时,存储范围在 0 到 18446744073709551615 之间的数。
另请参阅:
unsigned
关键字可以通过不表示负数来允许 int
表示更大的正数。
short
关键字确保 int
具有 16 位。
long
关键字确保 int
至少具有 32 位。
实例
例子 1
打印一个整数:
int myNum = 1000; printf("%d", myNum);
例子 2
创建有符号、无符号、短整型和长整型整数:
int myInt = 4294967292; unsigned int myUInt = 4294967292; short int mySInt = 65532; unsigned short int myUSInt = 65532; long int myLInt = 18446744073709551612; unsigned long int myULInt = 18446744073709551612; printf("size: %zu bits value: %d\n", 8*sizeof(myInt), myInt); printf("size: %zu bits value: %u\n", 8*sizeof(myUInt), myUInt); printf("size: %zu bits value: %d\n", 8*sizeof(mySInt), mySInt); printf("size: %zu bits value: %u\n", 8*sizeof(myUSInt), myUSInt); printf("size: %zu bits value: %lld\n", 8*sizeof(myLInt), myLInt); printf("size: %zu bits value: %llu\n", 8*sizeof(myULInt), myULInt);
相关页面
教程:C 数据类型