Latest web development tutorials

C bibliothèque standard - <limits.h>

Brève introduction

limits.h tête détermine les différentes propriétés de différents types de variables.Est définie dans le fichier d'en-tête macro limite les types de variables (comme char, int, et longue) valeur.

Ces limites sont spécifiées variable ne peut pas stocker toute valeur au delà de ces limites, comme un symbole qui peut être stocké sans maximum est de 255.

bibliothèque Macro

Les valeurs suivantes sont spécifiques à la mise en œuvre, et est défini par la directive #define, ces valeurs ne sont pas inférieures aux valeurs indiquées ci-dessous.

描述
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定义一个无符号长整型的最大值。

Exemples

L'exemple suivant illustre l'utilisation de limit.h certaines constantes définies dans le fichier.

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

Nous allons compiler et exécuter le programme ci-dessus, qui va produire les résultats suivants:

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