利用<limits.h>头文件确定类型取值范围

#include<stdio.h>
#include<limits.h>
main()
{
 //signed types
 printf("signed char min:%d\n",SCHAR_MIN);//-128
 printf("signed char max:%d\n",SCHAR_MAX);//127
 printf("signed short min:%d\n",SHRT_MIN);//-32768
 printf("signed short max:%d\n",SHRT_MAX);//32767
 printf("signed int min:%d\n",INT_MIN);//-2147483648
 printf("signed int max:%d\n",INT_MAX);//2147483447
 printf("signed long min:%ld\n",LONG_MIN);//-2147483648
 printf("signed long max:%ld\n",LONG_MAX);//2147483447
 //unsigned types
 printf("unsigned char max:%u\n",UCHAR_MAX);//255
 printf("unsigned short max:%u\n",USHRT_MAX);//65535
 printf("unsigned int max:%u\n",UINT_MAX);//4294967295
 printf("unsigned long max:%lu\n",ULONG_MAX);//4294967295
}
 
值得一提的是,short,int,long在不同的机器上取值范围不同。
头文件<limits.h>定义了一些标识整型大小的常量。
CHAR_BIT   char类型的位数
CHAR_MAX   char类型的最大值(最小值同理,下同)
INT_MAX    int类型的最大值
LONG_MAX   long类型的最大值
SCHAR_MAX  signed char类型的最大值
SHRT_MAX   signed short类型的最大值
 
UCHAR_MAX  unsigned char类型的最大值
UINT_MAX   unsigned int类型的最大值
ULONG_MAX  unsigned long类型的最大值
USHRT_MAX  unsigned short类型的最大值
posted @ 2011-11-25 09:01  四月不留  阅读(595)  评论(0编辑  收藏  举报