以下是 <limits.h> 中定义的一些常见的宏:
1. 整数类型的最小值和最大值:
- CHAR_MIN**、**CHAR_MAX:char 类型的最小值和最大值。
- SCHAR_MIN**、**SCHAR_MAX:signed char 类型的最小值和最大值。
- UCHAR_MAX:unsigned char 类型的最大值。
- SHRT_MIN**、**SHRT_MAX:short 类型的最小值和最大值。
- USHRT_MAX:unsigned short 类型的最大值。
- INT_MIN**、**INT_MAX:int 类型的最小值和最大值。
- UINT_MAX:unsigned int 类型的最大值。
- LONG_MIN**、**LONG_MAX:long 类型的最小值和最大值。
- ULONG_MAX:unsigned long 类型的最大值。
- LLONG_MIN**、**LLONG_MAX:long long 类型的最小值和最大值。
- ULLONG_MAX:unsigned long long 类型的最大值。
2. 位数相关的宏:
- CHAR_BIT:char 类型的比特数。
- BITS_PER_BYTE:每个字节的比特数(通常等于 CHAR_BIT)。
3. 整数类型的取值范围:
- INT_BIT**、**LONG_BIT**、**LLONG_BIT:分别表示 int、long 和 long long 类型的比特数。
这里是一个简单的例子,演示如何使用 <limits.h> 中的一些宏:
#include <stdio.h>
#include <limits.h>
int main() {
printf("Minimum value for char: %d\n", CHAR_MIN);
printf("Maximum value for char: %d\n", CHAR_MAX);
printf("Minimum value for short: %d\n", SHRT_MIN);
printf("Maximum value for short: %d\n", SHRT_MAX);
printf("Minimum value for int: %d\n", INT_MIN);
printf("Maximum value for int: %d\n", INT_MAX);
printf("Minimum value for long: %ld\n", LONG_MIN);
printf("Maximum value for long: %ld\n", LONG_MAX);
printf("Minimum value for long long: %lld\n", LLONG_MIN);
printf("Maximum value for long long: %lld\n", LLONG_MAX);
return 0;
}
这个程序输出了不同整数类型的最小值和最大值。请注意,<limits.h> 中的这些宏提供了与具体实现无关的整数类型的范围信息。
转载请注明出处:http://www.pingtaimeng.com/article/detail/3203/C语言