C标准库 limits.h

limits.h 提供了描述整数类型和字符类型特性的宏。

limits.h 头文件决定了各种变量类型的各种属性。定义在该头文件中的宏限制了各种变量类型(比如 char、int 和 long)的值。

这些限制指定了变量不能存储任何超出这些限制的值,例如一个无符号可以存储的最大值是 255。

limits库中定义的宏

下面的值是特定实现的,且是通过 #define 指令来定义的,这些值都不得低于下边所给出的值。

描述
CHAR_BIT 8 定义一个字节的比特数。
SCHAR_MIN -128 定义一个有符号字符的最小值。
SCHAR_MAX 127 定义一个有符号字符的最大值。
UCHAR_MAX 255 定义一个无符号字符的最大值。
CHAR_MIN 0 定义类型 char 的最小值,如果 char 表示负值,则它的值等于 SCHAR_MIN,否则等于 0。
CHAR_MAX 127 定义类型 char 的最大值,如果 char 表示负值,则它的值等于 SCHAR_MAX,否则等于 UCHAR_MAX。
MB_LEN_MAX 1 定义多字节字符中的最大字节数。
SHRT_MIN -32768 定义一个短整型的最小值。
SHRT_MAX +32767 定义一个短整型的最大值。
USHRT_MAX 65535 定义一个无符号短整型的最大值。
INT_MIN -32768 定义一个整型的最小值。
INT_MAX +32767 定义一个整型的最大值。
UINT_MAX 65535 定义一个无符号整型的最大值。
LONG_MIN -2147483648 定义一个长整型的最小值。
LONG_MAX +2147483647 定义一个长整型的最大值。
ULONG_MAX 4294967295 定义一个无符号长整型的最大值。

limits库实例

下面的实例演示了 limit.h 文件中定义的一些常量的使用。

#include <stdio.h>
#include <limits.h>

int main()
{

   printf("The number of bits in a byte %d\n", CHAR_BIT);

   printf("The minimum value of SIGNED CHAR = %d\n", SCHAR_MIN);
   printf("The maximum value of SIGNED CHAR = %d\n", SCHAR_MAX);
   printf("The maximum value of UNSIGNED CHAR = %d\n", UCHAR_MAX);

   printf("The minimum value of SHORT INT = %d\n", SHRT_MIN);
   printf("The maximum value of SHORT INT = %d\n", SHRT_MAX); 

   printf("The minimum value of INT = %d\n", INT_MIN);
   printf("The maximum value of INT = %d\n", INT_MAX);

   printf("The minimum value of CHAR = %d\n", CHAR_MIN);
   printf("The maximum value of CHAR = %d\n", CHAR_MAX);

   printf("The minimum value of LONG = %ld\n", LONG_MIN);
   printf("The maximum value of LONG = %ld\n", LONG_MAX);

   return(0);
}

运行结果为:

The number of bits in a byte 8
The minimum value of SIGNED CHAR = -128
The maximum value of SIGNED CHAR = 127
The maximum value of UNSIGNED CHAR = 255
The minimum value of SHORT INT = -32768
The maximum value of SHORT INT = 32767
The minimum value of INT = -32768
The maximum value of INT = 32767
The minimum value of CHAR = -128
The maximum value of CHAR = 127
The minimum value of LONG = -2147483648
The maximum value of LONG = 2147483647

赞(1)
未经允许不得转载:极客笔记 » C标准库 limits.h

  • 暂无文章

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
assert.h
C标准库 assert.hC标准库 断言函数assert
ctype.h
C标准库 ctype.hC标准库 isascii函数C标准库 isalnum函数C标准库 isalpha函数C标准库 iscntrl函数C标准库 isdigit函数C标准库 isgraph函数C标准库 islower函数C标准库 isprint函数C标准库 ispunct函数C标准库 isspace函数C标准库 isupper函数C标准库 isxdigit函数C标准库 toascii函数C标准库 tolower函数C标准库 toupper函数
errno.h
C标准库 errno.h
float.h
C标准库 float.hC标准库 _clear87函数C标准库 _control87函数C标准库 _status87函数
limits.h
C标准库 limits.h
locale.h
C标准库 locale.h
math.h
C标准库 math.hC标准库 abs函数C标准库 acos函数C标准库 asin函数C标准库 atan函数C标准库 atan2函数C标准库 ceil函数C标准库 cos函数C标准库 cosh函数C标准库 exp函数C标准库 fabs函数C标准库 floor函数C标准库 fmod函数C标准库 frexp函数C标准库 hypot函数C标准库 labs函数C标准库 ldexp函数C标准库 log函数C标准库 log10函数C标准库 modf函数C标准库 pow函数C标准库 pow10函数C标准库 sin函数C标准库 sinh函数C标准库 sqrt函数C标准库 tan函数C标准库 tanh函数
setjmp.h
C标准库 setjmp.hC标准库 longjmp函数C标准库 setjmp函数
signal.h
C标准库 signal.hC标准库 raise函数C标准库 signal函数
stdarg.h
C标准库 stdarg.hC标准库 va_arg函数C标准库 va_end函数C标准库 va_start函数C标准库 vfprintf函数C标准库 vfscanf函数C标准库 vprintf函数C标准库 vsprintf函数C标准库 vscanf函数C标准库 vsscanf函数
stddef.h
C标准库 stddef.h
stdio.h
C标准库 stdio.hC库函数 snprintf复制字符串C标准库 clearerr函数C标准库 fclose函数C标准库 feof函数C标准库 ferror函数C标准库 fflush函数C标准库 fgetc函数C标准库 fgetchar函数C标准库 fgetpos函数C标准库 fgets函数C标准库 fopen函数C标准库 fprintf函数C标准库 fputchar函数C标准库 fputs函数C标准库 fread函数C标准库 freopen函数C标准库 fscanf函数C标准库 fseek函数C标准库 fsetpos函数C标准库 ftell函数C标准库 fwrite函数C标准库 getc函数C标准库 getchar函数C标准库 getche函数C标准库 gets函数C标准库 getw函数C标准库 perror函数C标准库 printf函数C标准库 putc函数C标准库 putchar函数C标准库 puts函数C标准库 putw函数C标准库 rename函数C标准库 remove函数C标准库 rewind函数C标准库 scanf函数C标准库 setbuf函数C标准库 setvbuf函数C标准库 sprintf函数C标准库 sscanf函数C标准库 tmpfile函数C标准库 tmpnam函数C标准库 ungetc函数C标准库 ungetch函数
stdlib.h
C标准库 stdlib.hC库函数 atoi字符串转为整数C库函数 malloc分配内存C库函数 realloc重新分配内存C库函数 calloc申请零值内存C库函数 free释放申请的内存C标准库 abort函数C标准库 atexit函数C标准库 atof函数C标准库 atol函数C标准库 bsearch函数C标准库 div函数C标准库 ecvt函数C标准库 exit函数C标准库 fcvt函数C标准库 gcvt函数C标准库 getenv函数C标准库 itoa函数C标准库 ldiv函数C标准库 lfind函数C标准库 lsearch函数C标准库 putenv函数C标准库 qsort函数C标准库 rand函数C标准库 random函数C标准库 randomize函数C标准库 srand函数C标准库 strtod函数C标准库 strtol函数C标准库 swab函数C标准库 system函数
string.h
C标准库 string.hC库函数 memset做内存填充C库函数 strcpy复制字符串C库函数 strncmp比较字符串C标准库 movmem函数C标准库 setmem函数C标准库 stpcpy函数C标准库 strcat函数C标准库 strchr函数C标准库 strcmp函数C标准库 strcmpi函数C标准库 strcspn函数C标准库 strdup函数C标准库 stricmp函数C标准库 strlen函数C标准库 strlwr函数C标准库 strncat函数C标准库 strncmpi函数C标准库 strncpy函数C标准库 strnicmp函数C标准库 strpbrk函数C标准库 strrev函数C标准库 strset函数C标准库 strstr函数C标准库 strtok函数C标准库 strupr函数
time.h
C标准库 time.hC标准库 asctime函数C标准库 clock函数C标准库 ctime函数C标准库 difftime函数C标准库 gmtime函数C标准库 localtime函数C标准库 time函数C标准库 tzset函数