C++-Standardbibliothek <cstdlib>

<cstdlib>Ist eine Header-Datei in der C++-Standardbibliothek, die verschiedene allgemeine Hilfsfunktionen bereitstellt, darunter Speicherzuweisung, Prozesssteuerung, Umgebungsabfragen, Sortieren und Suchen, mathematische Konvertierungen, Pseudozufallszahlengenerierung usw. Diese Funktionen stammen ursprünglich aus der C-Standardbibliothek.<stdlib.h>, standardisiert und in C++ erweitert.

Syntax

In C++-Programmen, umcstdlibFunktionen darin zu verwenden, müssen Sie zuerst diese Header-Datei einbinden:

#include <cstdlib>

Häufig verwendete Funktionen

cstdlibenthält viele nützliche Funktionen. Im Folgenden finden Sie einige häufig verwendete Funktionen und ihre kurzen Beschreibungen:

  1. exit(int status): beendet die Programmausführung und gibt einen Statuscode zurück.
  2. system(const char* command): Führt eine Befehlszeilenzeichenfolge aus.
  3. malloc(size_t size): Weist Speicher der angegebenen Größe zu.
  4. free(void* ptr): Gibt zuvor zugewiesenen Speicher frei.
  5. atoi(const char* str): Konvertiert eine Zeichenfolge in eine ganze Zahl.
  6. atof(const char* str): Konvertiert eine Zeichenfolge in eine Gleitkommazahl.
  7. rand(): Erzeugt eine Zufallszahl.
  8. srand(unsigned int seed): Legt den Startwert für den Zufallszahlengenerator fest.

Beispiel

Im Folgenden finden Sie einige Beispiele für die Verwendung voncstdlibFunktionen in:

Beispiel 1: Verwendung vonexitFunktion

Beispiel

#include <iostream>
#include <cstdlib>

int main() {
    std::cout << "Dieses Programm wird jetzt beendet." << std::endl;
    exit(0); // Programm normal beenden
    return 0; // Diese Codezeile wird nicht ausgeführt
}

Ausgabeergebnis:

This program will exit now.

Beispiel 2: Verwendung vonsystemFunktion

Beispiel

#include <iostream>
#include <cstdlib>

int main() {
    std::cout << "Systembefehl wird ausgeführt: dir" << std::endl;
    system("dir"); // Dateien und Ordner im aktuellen Verzeichnis unter Windows anzeigen
    return 0;
}

Ausgabeergebnis:

Executing a system command: dir

Dann die Liste der Dateien und Ordner im aktuellen Verzeichnis anzeigen.

Beispiel 3: Verwendung vonmallocundfreeFunktion

Beispiel

#include <iostream>
#include <cstdlib>

int main() {
    int* ptr = (int*)malloc(10 * sizeof(int)); // Speicher reservieren
    if (ptr == NULL) {
        std::cout << "Speicherzuweisung fehlgeschlagen." << std::endl;
        return 1;
    }

    for (int i = 0; i < 10; ++i) {
        ptr[i] = i * i; // Zugewiesenen Speicher verwenden
    }

    for (int i = 0; i < 10; ++i) {
        std::cout << "Element " << i << ": " << ptr[i] << std::endl;
    }

    free(ptr); // Speicher freigeben
    return 0;
}

Ausgabeergebnis:

Element 0: 0
Element 1: 1
Element 2: 4
...
Element 9: 81

Beispiel 4: VerwendenatoiundatofFunktion

Beispiel

#include <iostream>
#include <cstdlib>

int main() {
    std::string str1 = "123";
    std::string str2 = "456.78";

    int num1 = std::atoi(str1.c_str()); // Zeichenkette in Ganzzahl umwandeln
    double num2 = std::atof(str2.c_str()); // Zeichenkette in Gleitkommazahl umwandeln

    std::cout << "Ganzzahl: " << num1 << std::endl;
    std::cout << "Gleitkommazahl: " << num2 << std::endl;
    return 0;
}

Ausgabeergebnis:

Integer: 123
Float: 456.78

Beispiel 5: Verwenden vonrandundsrandFunktion

Beispiel

#include <cstdlib>
#include <iostream>
#include <ctime>

int main() {
    std::srand(std::time(nullptr));  // Aktuelle Zeit als Zufallszahlen-Seed verwenden
    for (int i = 0; i < 5; ++i) {
        std::cout << std::rand() % 100 << " ";  // Eine Zufallszahl zwischen 0 und 99 generieren
    }
    std::cout << std::endl;

    return 0;
}

Ausgabeergebnis:

53 22 62 68 62 
Weitere Erweiterungen