Standard library header <cstdlib>
From cppreference.net
Cet en-tête était à l'origine dans la bibliothèque standard C sous le nom de <stdlib.h> .
Cet en-tête fournit des utilitaires divers. Les symboles définis ici sont utilisés par plusieurs composants de la bibliothèque.
Types |
||
|
type de structure, retourné par
std::div
(typedef) |
||
|
type de structure, retourné par
std::ldiv
(typedef) |
||
|
(C++11)
|
type de structure, retourné par
std::lldiv
(typedef) |
|
|
type entier non signé retourné par l'opérateur
sizeof
(typedef) |
||
Constantes de macro |
||
|
indique le statut d'exécution du programme
(constante macro) |
||
|
MB_CUR_MAX
|
nombre maximum d'octets dans un caractère multioctet avec la locale actuelle
(macro constante) |
|
|
constante de pointeur nul définie par l'implémentation
(constante macro) |
||
|
valeur maximale possible générée par
std::rand
(constante macro) |
||
Fonctions |
||
Contrôle de processus |
||
|
provoque la fin anormale du programme (sans nettoyage)
(fonction) |
||
|
provoque la fin normale du programme avec nettoyage
(fonction) |
||
|
(C++11)
|
provoque l'arrêt rapide du programme sans nettoyage complet
(fonction) |
|
|
(C++11)
|
provoque la fin normale du programme sans nettoyage
(fonction) |
|
|
enregistre une fonction à appeler lors
std::exit()
de l'invocation
(fonction) |
||
|
(C++11)
|
enregistre une fonction à appeler lors de
std::quick_exit
invocation
(fonction) |
|
|
appelle le processeur de commandes de l'environnement hôte
(fonction) |
||
|
accès à la liste des variables d'environnement
(fonction) |
||
Gestion de la mémoire |
||
|
alloue de la mémoire
(fonction) |
||
|
(C++17)
|
alloue de la mémoire alignée
(fonction) |
|
|
alloue et initialise à zéro la mémoire
(fonction) |
||
|
étend ou réduit un bloc de mémoire précédemment alloué
(fonction) |
||
|
désalloue la mémoire précédemment allouée
(fonction) |
||
Conversion numérique de chaînes |
||
|
convertit une chaîne d'octets en une valeur à virgule flottante
(fonction) |
||
|
(C++11)
|
convertit une chaîne d'octets en une valeur entière
(fonction) |
|
|
(C++11)
|
convertit une chaîne d'octets en une valeur entière
(fonction) |
|
|
(C++11)
|
convertit une chaîne d'octets en une valeur entière non signée
(fonction) |
|
|
convertit une chaîne d'octets en une valeur à virgule flottante
(fonction) |
||
Manipulation de chaînes larges |
||
|
retourne le nombre d'octets dans le prochain caractère multioctet
(fonction) |
||
|
convertit le prochain caractère multi-octet en caractère large
(fonction) |
||
|
convertit un caractère large en sa représentation multioctet
(fonction) |
||
|
convertit une chaîne de caractères multioctets étroite en chaîne large
(fonction) |
||
|
convertit une chaîne large en chaîne de caractères multioctets étroite
(fonction) |
||
Algorithmes et mathématiques divers |
||
|
génère un nombre pseudo-aléatoire
(fonction) |
||
|
initialise le générateur de nombres pseudo-aléatoires
(fonction) |
||
|
trie une plage d'éléments de type non spécifié
(fonction) |
||
|
recherche un élément de type non spécifié dans un tableau
(fonction) |
||
|
(C++11)
|
calcule la valeur absolue d'une valeur entière (
|x|
)
(fonction) |
|
|
(C++11)
|
calcule le quotient et le reste d'une division entière
(fonction) |
|
Synopsis
namespace std { using size_t = /* voir description */; // autonome using div_t = /* voir description */; // autonome using ldiv_t = /* voir description */; // autonome using lldiv_t = /* voir description */; // autonome } #define NULL /* voir description */ // freestanding #define EXIT_FAILURE /* voir description */ // freestanding #define EXIT_SUCCESS /* voir description */ // freestanding #define RAND_MAX /* voir description */ #define MB_CUR_MAX /* voir description */ namespace std { // Alias de types de fonctions uniquement à des fins d'exposition extern "C" using /* gestionnaire de sortie c */ = void(); // exposition uniquement extern "C++" using /* gestionnaire atexit */ = void(); // exposition uniquement extern "C" using /* c-compare-pred */ = // exposition uniquement int(const void*, const void*); extern "C++" using /* compare-pred */ = // exposition uniquement int(const void*, const void*); // début et fin [[noreturn]] void abort() noexcept; // autonome int atexit(/* gestionnaire c-atexit */* func) noexcept; // autonome int atexit(/* gestionnaire atexit */* func) noexcept; // autonome int at_quick_exit(/* gestionnaire c-atexit */* func) noexcept; // autonome int at_quick_exit(/* gestionnaire atexit */* func) noexcept; // autonome [[noreturn]] void exit(int status); // autonome [[noreturn]] void _Exit(int status) noexcept; // autonome [[noreturn]] void quick_exit(int status) noexcept; // autonome char* getenv(const char* name); int system(const char* string); // Allocation de mémoire de la bibliothèque C void* aligned_alloc(size_t alignment, size_t size); void* calloc(size_t nmemb, size_t size); void free(void* ptr); void* malloc(size_t size); void* realloc(void* ptr, size_t size); double atof(const char* nptr); int atoi(const char* nptr); long int atol(const char* nptr); long long int atoll(const char* nptr); double strtod(const char* nptr, char** endptr); float strtof(const char* nptr, char** endptr); long double strtold(const char* nptr, char** endptr); long int strtol(const char* nptr, char** endptr, int base); long long int strtoll(const char* nptr, char** endptr, int base); unsigned long int strtoul(const char* nptr, char** endptr, int base); unsigned long long int strtoull(const char* nptr, char** endptr, int base); // fonctions de conversion de chaînes et caractères multioctets / larges int mblen(const char* s, size_t n); int mbtowc(wchar_t* pwc, const char* s, size_t n); int wctomb(char* s, wchar_t wchar); size_t mbstowcs(wchar_t* pwcs, const char* s, size_t n); size_t wcstombs(char* s, const wchar_t* pwcs, size_t n); // Algorithmes de la bibliothèque standard C void* bsearch(const void* key, const void* base, // autonome size_t nmemb, size_t size, /* c-compare-pred */* compar); void* bsearch(const void* key, const void* base, // autonome size_t nmemb, size_t size, /* comparateur-prédicat */* compar); void qsort(void* base, size_t nmemb, size_t size, // autonome /* c-compare-pred */* compar); void qsort(void* base, size_t nmemb, size_t size, // autonome /* comparateur-prédicat */* compar); // génération de nombres aléatoires de faible qualité int rand(); void srand(unsigned int seed); // valeurs absolues constexpr int abs(int j); // autonome constexpr long int abs(long int j); // autonome constexpr long long int abs(long long int j); // autonome constexpr /* type à virgule flottante */ abs(/* type à virgule flottante */ j); // freestanding-deleted constexpr long int labs(long int j); // autonome constexpr long long int llabs(long long int j); // autonome constexpr div_t div(int numer, int denom); // autonome constexpr ldiv_t div(long int numer, long int denom); // autonome constexpr lldiv_t div(long long int numer, long long int denom); // autonome constexpr ldiv_t ldiv(long int numer, long int denom); // autonome constexpr lldiv_t lldiv(long long int numer, long long int denom); // autonome }
Rapports de défauts
Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.
| DR | Applicable à | Comportement publié | Comportement corrigé |
|---|---|---|---|
| LWG 286 | C++98 |
la définition de
size_t
n'était pas fournie dans
<cstdlib>
|
fournie |
Voir aussi
- Utilitaires de support de programme
- Génération de nombres pseudo-aléatoires
- Fonctions mathématiques communes
- Fonctions mathématiques spéciales
- Bibliothèque de gestion de mémoire C
- Chaînes d'octets terminées par un caractère nul
- Chaînes multioctets terminées par un caractère nul
- Bibliothèque d'algorithmes