#include <limits.h> // <climits> en C++
POSIX ajoute aussi quelques macros numériques ou historiques dans <limits.h>. Elles complétént les bornes ISO et certaines limites liées a la localisation ou aux priorités de processus.
| Macro | Depuis | Description |
|---|---|---|
LONG_BIT |
POSIX | Nombre de bits dans un objet de type long. |
WORD_BIT |
POSIX | Nombre de bits dans un objet de type int. |
SSIZE_MAX |
POSIX | Valeur maximale d'un objet de type ssize_t. |
NL_ARGMAX |
POSIX | Valeur maximale de n dans les conversions %n$. |
NL_LANGMAX |
POSIX | Nombre maximal d'octets dans un nom LANG. |
NL_MSGMAX |
POSIX | Numero maximal de message. |
NL_SETMAX |
POSIX | Numero maximal de jeu de messages. |
NL_TEXTMAX |
POSIX | Nombre maximal d'octets dans un message. |
NZERO |
POSIX | Priorite par defaut d'un processus. |
Le bloc suivant montre une maniere simple de consulter quelques limites, en tenant compte du fait que certaines valeurs peuvent aussi être demandées à l'exécution.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
#include <limits.h> #include <stdio.h> #include <stdlib.h> int main() { #ifdef SSIZE_MAX printf( "SSIZE_MAX == %ld\n", (long) SSIZE_MAX ); #endif #ifdef WORD_BIT printf( "WORD_BIT == %d\n", WORD_BIT ); #endif return EXIT_SUCCESS; } |
Un affichage possible est :
SSIZE_MAX == 9223372036854775807 WORD_BIT == 32
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :