Latest web development tutorials

C biblioteca estándar - <limits.h>

breve introducción

cabeceralimits.h determina las diversas propiedades de los diversos tipos de variables.Se define en el archivo de cabecera macro restringe los tipos de variables (como char, int y long) valor.

Estos límites se especifican variable no puede almacenar cualquier valor más allá de estos límites, tales como un símbolo que se puede almacenar sin máximo es 255.

librería de macros

Los siguientes valores son específicos de la implementación, y se define por la directiva #define, estos valores no son inferiores a los valores indicados a continuación.

描述
CHAR_BIT 8定义一个字节的比特数。
SCHAR_MIN-128定义一个有符号字符的最小值。
SCHAR_MAX127定义一个有符号字符的最大值。
UCHAR_MAX 255定义一个无符号字符的最大值。
CHAR_MIN0定义类型 char 的最小值,如果 char 表示负值,则它的值等于 SCHAR_MIN,否则等于 0。
CHAR_MAX127定义类型 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_MAX65535定义一个无符号整型的最大值。
LONG_MIN -2147483648定义一个长整型的最小值。
LONG_MAX +2147483647定义一个长整型的最大值。
ULONG_MAX 4294967295定义一个无符号长整型的最大值。

Ejemplos

El siguiente ejemplo demuestra el uso de limit.h algunas constantes definidas en el archivo.

#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);
}

Vamos a compilar y ejecutar el programa anterior, que producirá los siguientes resultados:

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