English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Outils en ligne

O)

Fonctions en C

Tableaux en C

Pointeurs en C

Chaines de caractères en C

Contrôle de flux de langage C

Structure de langage C

Fichier de langage C

Autres C

Bibliothèque standard <limits.h> en C

Manuel de référence du langage C limits.h

Ces restrictions spécifient que les variables ne peuvent pas stocker de valeurs au-delà de ces limites, par exemple, la valeur maximale que peut stocker un unsigned est 255.

Macros de bibliothèque

Les valeurs suivantes sont spécifiques à l'implémentation et sont définies par l'instruction #define, et ces valeurs ne doivent pas être inférieures aux valeurs indiquées ci-dessous.

MacroValeurDescription
CHAR_BIT8Définit le nombre de bits d'un octet.
SCHAR_MIN-128Définit la valeur minimale d'un caractère signé.
SCHAR_MAX127Définit la valeur maximale d'un caractère signé.
UCHAR_MAX255Définit la valeur maximale d'un caractère sans signe.
CHAR_MIN0Définit la valeur minimale du type de définition char, si char représente une valeur négative, alors sa valeur est égale à SCHAR_MIN, sinon égale à 0.
CHAR_MAX127Définir la valeur maximale du type char, si char représente une valeur négative, alors sa valeur est égale à SCHAR_MAX, sinon elle est égale à UCHAR_MAX.
MB_LEN_MAX1Définir le nombre maximal de bytes dans un caractère multibyte.
SHRT_MIN-32768Définir une valeur minimale pour un short int.
SHRT_MAX+32767Définir une valeur maximale pour un short int.
USHRT_MAX65535Définir une valeur maximale pour un unsigned short int.
INT_MIN-32768Définir une valeur minimale pour un int.
INT_MAX+32767Définir une valeur maximale pour un int.
UINT_MAX65535Définir une valeur maximale pour un unsigned int.
LONG_MIN-2147483648Définir une valeur minimale pour un long int.
LONG_MAX+2147483647Définir une valeur maximale pour un long int.
ULONG_MAX4294967295Définir une valeur maximale pour un long unsigned int.

Exemple en ligne

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

#include <stdio.h>
#include <limits.h>
int main()
{
   printf("Le nombre de bits de byte %d\n", CHAR_BIT);
   printf("La valeur minimale de SIGNED CHAR = %d\n", SCHAR_MIN);
   printf("La valeur maximale de SIGNED CHAR = %d\n", SCHAR_MAX);
   printf("La valeur maximale de UNSIGNED CHAR = %d\n", UCHAR_MAX);
   printf("La valeur minimale de SHORT INT = %d\n", SHRT_MIN);
   printf("La valeur maximale de SHORT INT = %d\n", SHRT_MAX); 
   printf("La valeur minimale de INT = %d\n", INT_MIN);
   printf("La valeur maximale de INT = %d\n", INT_MAX);
   printf("La valeur minimale de CHAR = %d\n", CHAR_MIN);
   printf("La valeur maximale de CHAR = %d\n", CHAR_MAX);
   printf("La valeur maximale de LONG = %ld\n", LONG_MIN);
   printf("La valeur minimale de LONG = %ld\n", LONG_MAX);
  
   return(0);
}

Compilons et exécutons le programme ci-dessus, ce qui produira le résultat suivant :

Le nombre de bits de byte 8
La valeur minimale de SIGNED CHAR = -128
La valeur maximale de SIGNED CHAR = 127
La valeur maximale de UNSIGNED CHAR = 255
La valeur minimale de SHORT INT = -32768
La valeur maximale de SHORT INT = 32767
La valeur minimale de INT = -32768
La valeur maximale de INT = 32767
La valeur minimale de CHAR = -128
La valeur maximale de CHAR = 127
La valeur maximale de LONG = -2147483648
La valeur minimale de LONG = 2147483647