2-1 编写一个程序以确定分别由signed和unsigned限定的char、short、int以及long 类型变量的取值范围。
采用打印标准头文件中的相应值:
#include <stdio.h> #include <limits.h> int main(){ printf("Size of char %d\n",CHAR_BIT); printf("Size of char Max %d\n",CHAR_MAX); printf("Size of char Min %d\n\n",CHAR_MIN); printf("Size of int max %d\n",INT_MAX); printf("Size of int min %d\n",INT_MIN); printf("Size of long min %ld\n", LONG_MIN); /* RB */ printf("Size of long max %ld\n", LONG_MAX); /* RB */ printf("Size of short min %d\n", SHRT_MIN); printf("Size of short max %d\n", SHRT_MAX); printf("Size of unsigned char %u\n", UCHAR_MAX); /* SF */ printf("Size of unsigned long %lu\n", ULONG_MAX); /* RB */ printf("Size of unsigned int %u\n", UINT_MAX); /* RB */ printf("Size of unsigned short %u\n", USHRT_MAX); /* SF */ printf("size of int %d\n",sizeof(int)); printf("size of short %d\n",sizeof(short)); printf("size of long %d\n",sizeof(long)); return 0; }
输出结果:
Size of char 8
Size of char Max 127
Size of char Min -128
Size of int max 2147483647
Size of int min -2147483648
Size of long min -2147483648
Size of long max 2147483647
Size of short min -32768
Size of short max 32767
Size of unsigned char 255
Size of unsigned long 4294967295
Size of unsigned int 4294967295
Size of unsigned short 65535
size of int 4
size of short 2
size of long 4
PS. 基本类型,不加unsigned时,默认是有符号的