Namensräume
Varianten
Aktionen

system

Von cppreference.com
Definiert im Header <stdlib.h>
int system( const char *command );

Ruft die Befehlsprozessor-Umgebung des Hosts mit dem Parameter command auf. Gibt einen implementierungsabhängigen Wert zurück (normalerweise den Wert, den das aufgerufene Programm zurückgibt).

Wenn command ein Nullzeiger ist, wird geprüft, ob die Host-Umgebung einen Befehlsprozessor hat, und gibt genau dann einen von Null verschiedenen Wert zurück, wenn der Befehlsprozessor existiert.

Inhalt

[bearbeiten] Parameter

command - Zeichenkette, die den im Befehlsprozessor auszuführenden Befehl identifiziert. Wenn ein Nullzeiger übergeben wird, wird die Existenz des Befehlsprozessors geprüft.

[bearbeiten] Rückgabewert

Implementierungsabhängiger Wert. Wenn command ein Nullzeiger ist, gibt die Funktion genau dann einen von Null verschiedenen Wert zurück, wenn der Befehlsprozessor existiert.

[bearbeiten] Hinweise

Auf POSIX-Systemen kann der Rückgabewert mit WEXITSTATUS und WSTOPSIG zerlegt werden.

Die verwandte POSIX-Funktion popen macht die von command generierte Ausgabe für den Aufrufer verfügbar.

[bearbeiten] Beispiel

In diesem Beispiel gibt es einen Systemaufruf des Unix-Befehls date +%A und einen Systemaufruf des (möglicherweise installierten) gcc-Compilers mit dem Kommandozeilenargument (--version).

#include <stdlib.h>
 
int main(void) {
    system("date +%A");
    system("gcc --version");
}

Mögliche Ausgabe

Wednesday
gcc (GCC) 11.2.0
...

[bearbeiten] Referenzen

  • C17-Standard (ISO/IEC 9899:2018)
  • 7.22.4.8 Die Funktion system (S. 257)
  • C11-Standard (ISO/IEC 9899:2011)
  • 7.22.4.8 Die Funktion system (S. 353-354)
  • C99-Standard (ISO/IEC 9899:1999)
  • 7.20.4.6 Die Funktion system (S. 317)
  • C89/C90-Standard (ISO/IEC 9899:1990)
  • 4.10.4.5 Die Funktion system

[bearbeiten] Siehe auch

C++ Dokumentation für system