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:
exit(int status): beendet die Programmausführung und gibt einen Statuscode zurück.system(const char* command): Führt eine Befehlszeilenzeichenfolge aus.malloc(size_t size): Weist Speicher der angegebenen Größe zu.free(void* ptr): Gibt zuvor zugewiesenen Speicher frei.atoi(const char* str): Konvertiert eine Zeichenfolge in eine ganze Zahl.atof(const char* str): Konvertiert eine Zeichenfolge in eine Gleitkommazahl.rand(): Erzeugt eine Zufallszahl.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 <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 <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 <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 <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 <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 62Weitere Erweiterungen