1.打印标准头文件中的相应值

 1 #include <stdio.h>
 2 #include <limits.h>
 3 main()
 4 {
 5     /* signed types */
 6 
 7     printf("signed char min = %d\n", SCHAR_MIN);
 8     printf("signed char max = %d\n", SCHAR_MAX);
 9     printf("signed short min = %d\n", SHRT_MIN);
10     printf("signed short max = %d\n", SHRT_MAX);
11     printf("signed int min = %d\n", INT_MIN);
12     printf("signed int max = %d\n", INT_MAX);
13     printf("signed long min = %d\n", LONG_MIN);
14     printf("signed long max = %d\n", LONG_MAX);
15 
16     /*unsigned types*/
17     printf("unsigned char max = %d\n", UCHAR_MAX);
18     printf("unsigned short max = %d\n", USHRT_MAX);
19     printf("unsigned int max = %d\n", UINT_MAX);
20     printf("unsigned long max = %d\n", ULONG_MAX);
21 
22     return 0;
23 }

输出:

 

2.直接计算方式

 1 #include <stdio.h>
 2 /*determine ranges of types*/
 3 
 4 main()
 5 {
 6      /* signed ranges of types*/
 7 
 8     printf(" signed char min = %d \n", -(char)((unsigned char) ~0 >> 1));
 9 
10     printf(" signed char max = %d \n", (char)((unsigned char) ~0 >> 1));
11 
12     printf(" signed short min = %d \n", -(short)((unsigned short) ~0 >> 1));
13 
14     printf(" signed short max = %d \n", (short)((unsigned short) ~0 >> 1));
15 
16     printf(" signed int min = %d \n", -(int)((unsigned int) ~0 >> 1));
17 
18     printf(" signed int max = %d \n", (int)((unsigned int) ~0 >> 1));
19 
20     printf(" signed long min = %d \n", -(long)((unsigned long) ~0 >> 1));
21 
22     printf(" signed long max = %d \n", (long)((unsigned long) ~0 >> 1));
23 
24 
25     /*unsigned types*/
26 
27     printf(" unsigned char max = %d \n",(unsigned char) ~0);
28 
29     printf(" unsigned int max = %d \n",(unsigned int) ~0);
30 
31     printf(" unsigned short max = %d \n",(unsigned short) ~0);
32 
33     printf(" unsigned long max = %d \n",(unsigned long) ~0);
34 
35 
36     return 0;
37 }

输出:

 

 

 

posted on 2020-04-28 17:24  杪杪  阅读(506)  评论(0)    收藏  举报