整型的长度根据不同的机器有所不同,一般是32位,可以使用sizeof函数测试整型的长度。可以使用limits.h中宏来判定整型的取值范围。
下表是32机器中整型的取值范围:
#include <stdio.h>
#include <limits.h>
int main(void) {
// 短整型
short int si = 100;
printf("si=%d,size=%ld\n", si, sizeof(si));
// 整型
int i = 100;
printf("i=%d,size=%ld\n", i, sizeof(i));
// 长整型
long int li = 100;
printf("li=%ld,size=%ld\n", li, sizeof(li));
// 无符号int
unsigned int ui = 100;
printf("ui=%d,size=%ld\n", ui, sizeof(ui));
// int 的最小值和最大值
printf("int min = %d,int max=%d\n", INT_MIN, INT_MAX);
// unsigned int 的最小值和最大值
printf("unsigned int max=%u", UINT_MAX);
return 0;
}
程序输出结果为:
si=100,size=2
i=100,size=4
li=100,size=8
ui=100,size=4
int min = -2147483648,int max=2147483647
unsigned int max=4294967295
整型修饰符 short long signed unsigned
一般人们会认为short、long等是一种数据类型,其实这是错误的。short、long、singed和unsigned都是整型的修饰类型。例如short int 表示短整型,一般简写为short,long int表示长整型一般简写为long。而signed表示有符号整型,unsigned表示无符号×××。换句话说,long 和 short 是扩大或缩小数值范围,unsigned和signed是有无符号。
该博客教程视频地址:http://geek99.com/node/965
原文出处:http://geek99.com/node/822#