Standard library header <cstdlib>
From cppreference.net
Dieser Header war ursprünglich in der C-Standardbibliothek als <stdlib.h> enthalten.
Dieser Header bietet verschiedene Hilfsmittel. Symbole, die hier definiert sind, werden von mehreren Bibliothekskomponenten verwendet.
Typen |
||
|
Strukturtyp, zurückgegeben von
std::div
(typedef) |
||
|
Strukturtyp, zurückgegeben von
std::ldiv
(typedef) |
||
|
(C++11)
|
Strukturtyp, zurückgegeben von
std::lldiv
(typedef) |
|
|
Vom
sizeof
-Operator zurückgegebener vorzeichenloser Ganzzahltyp
(typedef) |
||
Makro-Konstanten |
||
|
zeigt den Programmausführungsstatus an
(Makrokonstante) |
||
|
MB_CUR_MAX
|
Maximale Anzahl von Bytes in einem Multibyte-Zeichen mit dem aktuellen Gebietsschema
(Makrokonstante) |
|
|
implementierungsdefinierte Nullzeigerkonstante
(Makrokonstante) |
||
|
Maximaler möglicher Wert, generiert durch
std::rand
(Makrokonstante) |
||
Funktionen |
||
Prozesssteuerung |
||
|
verursacht abnormale Programmbeendigung (ohne Bereinigung)
(Funktion) |
||
|
bewirkt normalen Programmabbruch mit Bereinigung
(Funktion) |
||
|
(C++11)
|
bewirkt schnelle Programmbeendigung ohne vollständige Bereinigung
(Funktion) |
|
|
(C++11)
|
bewirkt normalen Programmabbruch ohne Bereinigung
(Funktion) |
|
|
registriert eine Funktion, die beim Aufruf von
std::exit()
aufgerufen wird
(Funktion) |
||
|
(C++11)
|
registriert eine Funktion, die beim Aufruf von
std::quick_exit
aufgerufen wird
(Funktion) |
|
|
ruft den Befehlprozessor der Host-Umgebung auf
(Funktion) |
||
|
Zugriff auf die Liste der Umgebungsvariablen
(Funktion) |
||
Speicherverwaltung |
||
|
weist Speicher zu
(Funktion) |
||
|
(C++17)
|
weist ausgerichteten Speicher zu
(Funktion) |
|
|
weist Speicher zu und setzt ihn auf Null
(Funktion) |
||
|
erweitert oder verkleinert einen zuvor zugewiesenen Speicherblock
(Funktion) |
||
|
gibt zuvor allokierten Speicher frei
(Funktion) |
||
Numerische Zeichenkettenkonvertierung |
||
|
wandelt eine Byte-Zeichenkette in einen Gleitkommawert um
(Funktion) |
||
|
(C++11)
|
wandelt eine Byte-Zeichenkette in einen ganzzahligen Wert um
(Funktion) |
|
|
(C++11)
|
wandelt eine Byte-Zeichenkette in einen ganzzahligen Wert um
(Funktion) |
|
|
(C++11)
|
wandelt eine Byte-Zeichenkette in einen vorzeichenlosen Ganzzahlwert um
(Funktion) |
|
|
wandelt eine Byte-Zeichenkette in einen Gleitkommawert um
(Funktion) |
||
Breite Zeichenkettenmanipulation |
||
|
gibt die Anzahl der Bytes im nächsten Multibyte-Zeichen zurück
(Funktion) |
||
|
wandelt das nächste Multibyte-Zeichen in ein Breitzeichen um
(Funktion) |
||
|
wandelt ein Breitzeichen in seine Multibyte-Darstellung um
(Funktion) |
||
|
wandelt eine Multibyte-Zeichenkette in eine Breitzeichen-Zeichenkette um
(Funktion) |
||
|
wandelt eine Breitzeichen-Zeichenkette in eine schmale Multibyte-Zeichenkette um
(Funktion) |
||
Verschiedene Algorithmen und Mathematik |
||
|
erzeugt eine Pseudozufallszahl
(Funktion) |
||
|
initialisiert den Pseudozufallszahlengenerator
(Funktion) |
||
|
sortiert eine Reihe von Elementen mit unspezifiziertem Typ
(Funktion) |
||
|
durchsucht ein Array nach einem Element eines nicht näher bezeichneten Typs
(Funktion) |
||
|
(C++11)
|
berechnet den absoluten Wert eines ganzzahligen Wertes (
|x|
)
(Funktion) |
|
|
(C++11)
|
berechnet Quotient und Rest der ganzzahligen Division
(Funktion) |
|
Übersicht
namespace std { using size_t = /* siehe Beschreibung */; // freestanding using div_t = /* siehe Beschreibung */; // freestanding using ldiv_t = /* siehe Beschreibung */; // freestanding using lldiv_t = /* siehe Beschreibung */; // freestanding } #define NULL /* siehe Beschreibung */ // freestanding #define EXIT_FAILURE /* siehe Beschreibung */ // freestanding #define EXIT_SUCCESS /* siehe Beschreibung */ // freestanding #define RAND_MAX /* siehe Beschreibung */ #define MB_CUR_MAX /* siehe Beschreibung */ namespace std { // Nur zur Darstellung dienende Funktions-Typaliase extern "C" using /* c-atexit-handler */ = void(); // exposition only extern "C++" using /* atexit-Handler */ = void(); // exposition only extern "C" using /* c-compare-pred */ = // exposition only int(const void*, const void*); extern "C++" using /* compare-pred */ = // exposition only int(const void*, const void*); // Start und Beendigung [[noreturn]] void abort() noexcept; // freestanding int atexit(/* c-atexit-handler */* func) noexcept; // freestanding int atexit(/* atexit-Handler */* func) noexcept; // freestanding int at_quick_exit(/* c-atexit-handler */* func) noexcept; // freestanding int at_quick_exit(/* atexit-Handler */* func) noexcept; // freestanding [[noreturn]] void exit(int status); // freestanding [[noreturn]] void _Exit(int status) noexcept; // freestanding [[noreturn]] void quick_exit(int status) noexcept; // freestanding char* getenv(const char* name); int system(const char* string); // C-Bibliotheksspeicherzuweisung 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); // Multibyte-/Wide-String- und Zeichenkonvertierungsfunktionen 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); // C-Standardbibliothek Algorithmen void* bsearch(const void* key, const void* base, // freestanding size_t nmemb, size_t size, /* c-compare-pred */* compar); void* bsearch(const void* key, const void* base, // freestanding size_t nmemb, size_t size, /* compare-pred */* compar); void qsort(void* base, size_t nmemb, size_t size, // freestanding /* c-compare-pred */* compar); void qsort(void* base, size_t nmemb, size_t size, // freestanding /* compare-pred */* compar); // minderwertige Zufallszahlengenerierung int rand(); void srand(unsigned int seed); // absolute Werte constexpr int abs(int j); // freestanding constexpr long int abs(long int j); // freestanding constexpr long long int abs(long long int j); // freestanding constexpr /* Gleitkommatyp */ abs(/* Gleitkommatyp */ j); // freestanding-deleted constexpr long int labs(long int j); // freestanding constexpr long long int llabs(long long int j); // freestanding constexpr div_t div(int numer, int denom); // freestanding constexpr ldiv_t div(long int numer, long int denom); // freestanding constexpr lldiv_t div(long long int numer, long long int denom); // freestanding constexpr ldiv_t ldiv(long int numer, long int denom); // freestanding constexpr lldiv_t lldiv(long long int numer, long long int denom); // freestanding }
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrektes Verhalten |
|---|---|---|---|
| LWG 286 | C++98 |
die Definition von
size_t
wurde nicht in
<cstdlib>
bereitgestellt
|
bereitgestellt |