版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
版权
学习笔记专栏收录该内容
40 篇文章0 订阅
订阅专栏
C语言int的取值范围
我们常常看到int取值范围为-32768~32767,实际上int的取值范围依赖于计算机系统,在16位机器中,int占16位,其中一位为符号位,所以取值范围为前面所说的-32768~32767(
)。
而在32位和64位机器中,int占32位,取值范围为-2147483648~2147483647(
)。ISO/ANSI C规定,int类型的最小范围为-32768到32767。
其它int类型的情况:
short int类型可能占用比int类型更少的存储空间,C保证short类型至少16位长,用于只需小数值的场合以节省空间。
long int类型(或简写为long类型)可能占用比int类型更多的存储空间,C保证short类型至少32位长,用于使用大数值的场合。
long long int类型(或简写为long long类型)可能占用比long类型更多的存储空间,C保证short类型至少64位长,用于使用更大数值的场合。
我们可以通过sizeof函数得到以字节为单位的大小(1byte=8bit),加以验证:
#includeintmain(){printf("intsize:%lubyte\n",sizeof(int));printf("short size:%lubyte\n",sizeof(shortint));printf("longsize:%lubyte\n",sizeof(longint));printf("long long size:%lubyte\n",sizeof(longlongint));return0;}
控制台输出: