La bibliothèque standard du C
Pour diverses raisons dites de «sécurité» certains
liens ne
sont plus fonctionnels et en particulier ceux qui devraient conduire aux
manuels en ligne.
diagnostic à l'exécution.
Les macro-définitions :
- assert() assure que
l'assertion est vérifiée.
manipulation des caractères.
Les fonctions :
- isalnum()
teste si le caractère est alphanumérique.
- isalpha()
teste si le caractère est alphabétique.
- iscntrl()
teste si l'argument est un caractère de contrôle.
- isdigit()
teste si le caractère est numérique.
- isgraph()
teste si le caractère est visible.
- islower()
teste si le caractère représente une lettre minuscule.
- isprint()
teste si le caractère est imprimable.
- ispunct()
teste si le caractère est un signe de ponctuation.
- isspace()
teste si le caractère est un espacement.
- isupper()
teste si le caractère représente une lettre majuscule.
- isxdigit()
teste si le caractère est un chiffre héxadécimal valide.
- tolower()
convertit le caractère en sa représentation minuscule.
- toupper()
convertit le caractère en sa représentation majuscule.
gestion des erreurs.
Les constantes prédéfinies :
Les variables prédéfinies :
limites de l'arithmétique flottante.
Les constantes prédéfinies :
- FLT_RADIX base de l'exposant dans la
représentation d'un flottant.
- FLT_MANT_DIG taille de la mantisse dans la
représentation d'un réél flottant.
- FLT_EPSILON différence entre la valeur
réelle 1.0 et le plus petit flottant immédiatement supérieur.
- FLT_DIG nombre de chiffres de la partie
décimale d'un réél ne subissant aucune modification après conversion
dans un réél flottant.
- FLT_MIN_EXP le plus petit entier négatif, x,
tel que FLT_RADIXx-1 est un flottant
normalisé.
- FLT_MIN le plus petit flottant positif normalisé.
- FLT_MIN_10_EXP le plus petit entier négatif, x,
tel que 10x est un réél flottant normalisé.
- FLT_MAX_EXP le plus grand entier positif, x,
tel que FLT_RADIXx-1 est un flottant.
- FLT_MAX le plus grand flottant représentable.
- FLT_MAX_10_EXP le plus grand entier, x, tel
que 10x est un flottant.
- FLT_ROUNDS mode courant de calcul d'arrondi.
- DBL_MANT_DIG
- DBL_EPSILON
- DBL_DIG
- DBL_MIN_EXP
- DBL_MIN
- DBL_MIN_10_EXP
- DBL_MAX_EXP
- DBL_MAX
- DBL_MAX_10_EXP
- LDBL_MANT_DIG
- LDBL_EPSILON
- LDBL_DIG
- LDBL_MIN_EXP
- LDBL_MIN
- LDBL_MIN_10_EXP
- LDBL_MAX_EXP
- LDBL_MAX
- LDBL_MAX_10_EXP
limites de l'arithmétique entière.
Les constantes prédéfinies :
- CHAR_BIT nombre de bits dans un
char.
- CHAR_MIN
- CHAR_MAX la plus grande valeur pouvant être
contenue dans un char.
- INT_MIN
- INT_MAX la plus grande valeur pouvant être
contenue dans un int.
- LONG_MIN
- LONG_MAX la plus grande valeur pouvant être
contenue dans un long int
- MB_LEN_MAX le plus grand nombre d'octets
nécessaires à la contenance d'un caractère international.
- SCHAR_MIN
- SCHAR_MAX la plus grande valeur pouvant
être contenue dans un signed char.
- SHRT_MIN
- SHRT_MAX la plus grande valeur pouvant être
contenue dans un short.
- UCHAR_MAX la plus grande valeur pouvant être
contenue dans un unsigned char.
- USHRT_MAX la plus grande valeur pouvant être
contenue dans un unsigned short int.
- UINT_MAX la plus grande valeur pouvant être
contenue dans un unsigned int.
- ULONG_MAX la plus grande valeur pouvant être
contenue dans un unsigned long int.
Support multilingue.
Les constantes prédéfinies :
- NULL
- LC_CTYPE définition de l'alphabet.
- LC_COLLATE définition de l'ordre des caractères.
- LC_TIME définition du format de l'heure et de la
date.
- LC_NUMERIC définition du format de représentation
des nombres.
- LC_MONETARY définition du format de représentation
des masses monétaires.
- LC_MESSAGES gestion des messages multilingues.
- LC_ALL catégorie prioritaire par défaut.
Les fonctions de manipulation des diverses catégories :
- setlocale()
modifie ou retrouve la valeur d'une catégorie.
- localeconv()
retrouve la définition du format de représentation.
Les types :
La bibliothèque mathématique.
Les constantes prédéfinies :
- HUGE_VAL indique que la valeur n'est pas
représentable.
Les fonctions trigonométriques :
- acos() arc-cosinus.
- asin() arc-sinus.
- atan() et
atan2() arc-tangente.
- cos() cosinus.
- sin() sinus.
- tan() tangente.
Les fonctions trigonométriques hyperboliques :
- cosh() cosinus hyperbolique.
- sinh() sinus hyperbolique.
- tanh() tangente hyperbolique.
Les fonctions exponentielles et logarithmiques :
- exp()
exponentielle (ex).
- frexp()
extraction de la mantisse et de l'exposant d'un nombre.
- ldexp()
exponentiation en base 2 (x*2y).
- log()
logarithme népérien.
- log10()
logarithme décimal.
- modf()
décomposition en partie entière et décimale d'un réél.
- pow()
élévation à la puissance (xy).
- sqrt()
extraction de racine carrée.
Les fonctions diverses :
- ceil()
calcul de l'entier inférieur le plus proche (fonction plancher).
- fabs()
valeur absolue.
- floor()
calcul de l'entier supérieur le plus proche (fonction plafond).
- fmod()
reste de la division.
transfert d'exécution.
Les fonctions :
- longjmp()
restaure l'environnement d'exécution.
Les macro-définitions :
- setjmp()
sauve l'environnement d'exécution.
Les types :
gestion des signaux.
Les constantes prédéfinies :
- SIGABRT arrêt anormal.
- SIGFPE erreur dans un calcul arithmétique.
- SIGILL tentative d'exécution d'une instruction
interdite.
- SIGINT interruption logicielle.
- SIGSEGV violation d'accès à la mémoire.
- SIGTERM demande de terminaison.
Les macros-définitions :
- SIG_DFL comportement par défaut.
- SIG_ERR erreur.
- SIG_IGN ignore la délivrance.
Les fonctions :
- signal()
définition de l'action à réaliser à l'instant de la délivrance d'un
signal.
- raise()
envoi d'un signal.
Les types :
gestion des arguments.
Les macro-définitions :
- va_start()
pointe sur le début de la liste des arguments.
- va_arg()
décode l'argument courant et pointe sur le suivant.
- va_end()
termine le balayage des arguments.
Les types :
définitions générales.
Les constantes prédéfinies :
Les macro-définitions :
- offsetof() calcule l'adresse
relative d'un champ par rapport au début de la structure.
Les types prédéfinis :
- size_t type des tailles d'objets.
- ptrdiff_t type du résultat de la soustraction
de deux adresses.
- wchar_t type des caractères étendus.
entrées/sorties
Les constantes prédéfinies :
- _IOFBF vidage du tampon lors de son débordement.
- _IOLBF vidage du tampon après écriture d'une
fin de ligne.
- _IONBF vidage à chaque écriture.
- BUFSIZ taille du tampon par défaut.
- EOF valeur indiquant la fin du flot.
- FILENAME_MAX longueur maximum d'une référence de
fichier.
- FOPEN_MAX nombre maximum d'objets que
l'environnement permet de manipuler simultanément.
- L_tmpnam longueur des références d'objets
temporaires créés dans l'environnement.
- NULL
- SEEK_CUR les déplacements sont mesurés
relativement à la position courante.
- SEEK_END les déplacements sont mesurés
relativement à la fin du flot.
- SEEK_SET les déplacements sont mesurés
relativement au début du flot.
- TMP_MAX nombre minimum de fichiers temporaires
distincts que l'environnement est capable de fournir.
- stdin objet représentant le flot d'entrée
standard.
- stdout objet représentant le flot de sortie
standard.
- stderr objet représentant le flot de sortie
d'erreurs standard.
Les fonctions :
- clearerr() repositionne
les indicateurs d'erreur et de marque de fin.
- fclose() libère le flot.
- feof() teste la fin du flot.
- ferror() teste l'indicateur
d'erreur du flot.
- fflush() vide le tampon associé.
- fgetc() lit un caractère dans le
flot.
- fgetpos() récupère la position
courante du flot.
- fgets() lit une chaîne dans le
flot.
- fopen() alloue un flot.
- fprintf() réalise une écriture
formatée dans un flot.
- fputc() écrit un caractère dans un
flot.
- fputs() écrit une chaîne dans un
flot.
- fread() lit une suite d'octets
dans un flot.
- freopen() réalloue un flot.
- fscanf() réalise une lecture
formatée dans un flot.
- fseek() modifie la position
courante dans le flot.
- fsetpos() modifie la position
courante dans le flot.
- ftell() récupère la position
courante dans le flot.
- fwrite() écrit une suite
d'octets dans un flot.
- getc() lit un caractère dans
un flot.
- getchar() lit un caractère dans
le flot d'entrée standard.
- gets() lit une chaîne de caractères
dans le flot d'entrée standard.
- perror() écrit un message d'erreur
sur le flot de sortie d'erreurs standard.
- printf() écrit un message formaté
sur le flot de sortie standard..
- putc() écrit un caractère sur un
flot.
- putchar() écrit un caractère sur
le flot de sortie standard.
- puts() écrit une chaîne de
caractères sur le flot de sortie standard.
- remove() supprime un fichier.
- rename() renomme un fichier.
- rewind() remet la position
courante au début du flot.
- scanf() réalise une lecture
formatée sur le flot d'entrée standard.
- setbuf() modifie la zone utilisée
pour contenir le tampon.
- setvbuf() modifie les
caractéristiques du tampon.
- sprintf() réalise une écriture
formaté dans une zone mémoire.
- sscanf() réalise une lecture
formatée depuis une zone mémoire.
- tmpfile() alloue un flot
temporaire.
- tmpnam() créé une référence de
fichier temporaire unique.
- ungetc() remet un caractère dans
le flot.
- vfprintf() réalise une écriture
formatée dans un flot.
- vprintf() réalise une écriture
formaté dans le flot de sortie standard.
- vsprintf () réalise une
écriture formaté dans une zone mémoire.
Les types :
- FILE type des objets utilisés pour réaliser
des opérations d'entrées/sorties.
- fpos_t type des mesures de positionnement.
- size_t type des mesures de taille.
utilitaires d'usage général.
Les constantes prédefinies :
- EXIT_FAILURE permet de renvoyer une valeur
indiquant l'échec de la commande.
- EXIT_SUCCESS permet de renvoyer une valeur
indiquant la terminaison normale de la commande.
- MB_CUR_MAX donne le nombre maximal de caractères
nécessaires pour contenir un caractères étendu dans
l'internationalisation courante.
- NULL peut être utilisé comme représentant le
pointeur nul.
- RAND_MAX indique la valeur maximum pouvant être
renvoyée par rand().
Les types prédéfinis :
- div_t est utilisé pour représenter le quotient
et le reste d'une division entière :
typedef struct {
int quot, rem;
} div_t;
- ldiv_t est utilisé pour représenter le quotient
et le reste d'une division entière sur des entiers longs :
typedef struct {
long quot, rem;
} ldiv_t;
- size_t permet de ranger une valeur représentant
une longueur.
- wchar_t est le type permettant de ranger un
caractère étendu.
Les fonctions :
- abort() permet d'arrêter brutalement l'exécution
du processus courant en envoyant un signal
SIGABRT.
Le contrôle n'est jamais rendu à l'appelant même si ce signal est
capturé. La terminaison est alors forçée en utlisant
exit(EXIT_FAILURE).
- abs() renvoie la valeur absolue d'un entier.
- atexit() permet d'enregister une fonction qui
sera appelée au moment de la terminaison du processus par
exit() ou par la sortie de
main().
- atof() convertit une chaîne de caractères
représentant un nombre réél en un double.
- atoi() convertit une chaîne de caractères
représentant un nombre entier en un int.
- atol() convertit une chaîne de caractères
représentant un entier en un long.
- bsearch() effectue la recherche par dichotomie
d'un élement dans un tableau d'élements ordonnés.
- calloc() réalise l'allocation d'un tableau
sur le tas.
- div() calcule le quotient et le reste d'une
division entière.
- exit() réalise la terminaison du processus.
- free() libère une zone mémoire précédemment
allouée sur le tas.
- getenv() permet de consulter l'environnement.
- labs() renvoie la valeur absolue d'un entier long.
- ldiv() calcule le quotient et le reste d'une
division entière effectuée sur des entiers longs.
- malloc() alloue une zone mémoire sur le tas.
- mblen() calcule le nombre de caractères étendus
contenus dans la chaîne de caractères.
- mbstowcs() convertit une chaîne de
multi-caractères en chaîne de caractères étendus.
- mbtowc(*) convertit un multi-caractère en
caractère étendu.
- qsort() applique le quick-sort sur un tableau
d'éléments.
- rand() renvoie un nombre pseudo-aléatoire.
- realloc() modifie la taille d'une zone mémoire
située sur le tas.
- srand() initialise le germe d'une séquence
aléatoire.
- strtod() convertit une chaîne de caractères
représentant un réél en double.
- strtol() convertit une chaîne de caractères
représentant un entier long en long.
- strtoul() convertit une chaîne de caractères
représentant un entier long non signé en
unsigned long.
- system() permet de lancer un interpréteur de
commande afin de réaliser la commande.
- wcstombs convertit une chaîne de caractères
étendus en une chaîne de multi-caractères.
- wctomb convertit un caractère étendu en un
multi-caractère.
manipulation des chaînes de caractères.
Les constantes prédéfinies :
Les fonctions :
- memchr() recherche
d'un caractère dans une zone mémoire.
- memcmp() comparaison
lexicographique de deux zones mémoire.
- memcpy() recopie
d'une zone mémoire.
- memmove() recopie
d'une zone mémoire avec recouvrement.
- memset()
initialisation d'une zone mémoire.
- strcat()
concaténation de dexu chaînes de caractères.
- strncat()
concaténation limitée en longueur de deux chaînes.
- strchr() recherche
la première occurence d'un caractère dans un chaîne.
- strrchr()
recherche la dernière occurence d'un caractère dans une chaîne.
- strcmp() comparaison
lexicographique de deux chaînes de caractères.
- strncmp()
comparaison lexicographique limitée en longueur.
- strcoll()
comparaison lexicographique de deux chaînes de caractères
internationaux.
- strcpy() recopie
d'une chaîne de caractère.
- strncpy() recopie
limitée en longueur.
- strcspn() calcule
la longueur du plus grand préfixe ne contenant pas certains caractères.
- strspn() calcule
la longueur du plus grand préfixe ne contenant que certains caractères.
- strpbrk() calcule
l'adresse du plus long suffixe commençant par un caractère choisi dans
une liste.
- strerror()
retrouve le message d'erreur associé.
- strlen() calcule
la longueur d'une chaîne.
- strstr() calcule la
position d'une sous-chaîne dans une chaîne.
- strtok() découpe
une chaîne en lexèmes.
- strxfrm() transforme
une chaîne en sa version internationalisée.
Les types :
manipulation des mesures de temps.
Les constantes prédéfinies :
- CLOCKS_PER_SEC indique combien de tops d'horloge
sont générés par seconde.
- NULL
Les types prédéfinis :
Les fonctions :
- asctime() convertit un temps calendaire en
chaîne de caractères.
- clock() renvoie le nombre de tops d'horloges
consommés par le processus courant.
- ctime() convertit un temps arithmétique en une
chaîne de caractères.
- difftime() calcule la differences de deux temps
arithmétiques.
- gmtime() convertit un temps arithmétique en temps
calendaire UTC.
- localtime() convertit un temps arithmétique en
temps calendaire local.
- mktime() normalise un temps calendaire.
- strftime() formate un temps calendaire.
- time() renvoie le temps arithmétique courant.