Programme werden häufig über die Konsole gestartet und benötigen dabei Eingabeparameter zur Steuerung ihres Verhaltens. Diese Seite bietet eine kompakte Anleitung zur Übergabe und Verarbeitung solcher Parameter in C++.
In C++ erfolgt die Parameterübergabe über die main-Funktion, wobei die Argumente standardmäßig wie folgt definiert werden:
int main(int argc, const char* argv[]) {}
Dabei gilt:
argc (Argument Count) gibt die Anzahl der übergebenen Argumente an.
argv (Argument Vector) enthält die Argumente als Zeichenketten.argv[0] ist stets der Pfad zur ausgeführten Datei.
Der erste übergebene Wert befindet sich in argv[1], der zweite in argv[2] usw.
#include "pch.h"
#include <iostream>
#include <string>
#include <Windows.h>
using namespace std;
int main(int argc, const char* argv[]) {
cout << endl << "Pfad zu diesem Programm:" << endl;
cout << argv[0] << endl << endl;
if (argc > 1) {
cout << "Erster Eingabeparameter:" << endl;
cout << argv[1] << endl << endl;
} else {
cout << "Kein Eingabeparameter übergeben." << endl << endl;
}
return 0;
}
Beispielhafter Aufruf über die PowerShell:
c:\<pfadzurexedatei>\test.exe "dasistmeinuebergabewert"
H@ppy H@cking