Verwendung des Befehls system(„pause“) in C++

In diesem Artikel werden wir uns ansehen, wie der system(„pause“) Befehl in C++ verwendet wird.

Wichtiger Hinweis

Bevor Sie diesen Artikel durchgehen, beachten Sie, dass der Befehl system(„pause“) nur in Windows-Systemen verfügbar ist. Das bedeutet, dass Sie diesen nicht von einem Linux- oder Mac-Computer aus verwenden können.

Der system()-Befehl

Bevor wir uns den Befehl system(„pause“) ansehen, verstehen wir, was system() tut.

#include <cstdlib>

int system(const char *command);

Die Funktion system() führt einen Aufruf an das Betriebssystem aus, um einen bestimmten Befehl auszuführen. Beachten Sie, dass wir die Header-Datei <cstdlib> einbinden müssen. Dies ist sehr ähnlich dem Öffnen eines Terminals und dem manuellen Ausführen dieses Befehls. Wenn Sie beispielsweise den Befehl „ls“ von Linux verwenden möchten, können Sie system(„ls“) verwenden.

Beispiel für Linux/Mac

Wenn Sie einen Linux- oder Mac-Computer haben, können Sie den folgenden Code ausprobieren.

#include <iostream>
#include <cstdlib>

using namespace std;

int main() {
    // Probieren Sie den Befehl "ls -l" von Ihrem Linux- / Mac-Computer aus
    int ret = system("ls -l > test.txt");
    return 0;
}

Mögliche Ausgabe

Gesamt 16
-rwxr-xr-x 1 2001 2000 9712 Jun 25 21:11 a.out
-rw-rw-rw- 1 2001 2000  209 Jun 25 21:11 main.cpp
-rw-r--r-- 1 2001 2000    0 Jun 25 21:11 test.txt

Verwendung des Befehls system(„pause“) in C++

Dies ist ein Windows-spezifischer Befehl, der dem Betriebssystem mitteilt, das Pause-Programm auszuführen. Dieses Programm wartet darauf, beendet zu werden, und stoppt die Ausführung des übergeordneten C++-Programms. Erst nachdem das Pause-Programm beendet wurde, setzt das ursprüngliche Programm seine Ausführung fort.

Beispiel für Windows

Wenn Sie einen Windows-Computer verwenden, können Sie den folgenden Code ausführen:

#include <iostream>
#include <cstdlib>

using namespace std;

int main() {
    for (int i=0; i<10; i++) {
        cout << "i = " << i << endl;
        if (i == 5) {
            // Rufen Sie den Pause-Befehl auf
            cout << "Rufe den Pause-Befehl auf\n";
            system("pause");
            cout << "Pause-Programm beendet. Fortsetzung...\n";
        }
    }
    return 0;
}

Ausgabe – Von Windows-System

i = 0
i = 1
i = 2
i = 3
i = 4
i = 5
Rufe den Pause-Befehl auf
Drücken Sie eine beliebige Taste, um fortzufahren . . .
Pause-Programm beendet. Fortsetzung...
i = 6
i = 7
i = 8
i = 9

E:\Programs\sample.exe (Prozess 14052) wurde mit Code 0 beendet.

Nachteile der Verwendung des Befehls system(„pause“)

Der Hauptnachteil von system(„pause“) ist, dass dieser plattformspezifisch ist. Dies funktioniert nicht auf Linux/Mac-Systemen und ist nicht portabel.Obwohl dies als eine Art Hack für Windows-Systeme funktioniert, kann dieser Ansatz leicht Fehler verursachen, wenn Sie versuchen, den Code auf anderen Systemen auszuführen! Daher würde ich einige andere alternative Methoden vorschlagen, um ein Programm anzuhalten und fortzusetzen, wie zum Beispiel die Verwendung von Signalhandlern.

Schlussfolgerung

In diesem Artikel haben wir gelernt, wie wir den Befehl system(„pause“) in C++ verwenden können.

Kostenlosen Account erstellen

Registrieren Sie sich jetzt und erhalten Sie Zugang zu unseren Cloud Produkten.

Das könnte Sie auch interessieren: