Namespaces
Variants

Standard library header <cstdlib>

From cppreference.net
Standard library headers

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.

Inhaltsverzeichnis

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)
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)
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)
wandelt eine Byte-Zeichenkette in einen ganzzahligen Wert um
(Funktion)
wandelt eine Byte-Zeichenkette in einen ganzzahligen Wert um
(Funktion)
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)
berechnet den absoluten Wert eines ganzzahligen Wertes ( |x| )
(Funktion)
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

Siehe auch