Arrays und Befehlszeilenparameter in C ++

In einer typischen C ++ Anwendung, der Main() Funktion erhält ein Array und eine Zählung als Kommandozeilenparameter - Parameter als Teil des Befehls zur Verfügung gestellt, dass die Anwendung in der Befehlszeile auszuführen. Doch zu Beginn Programmierer können die Parameter einschüchternd aussehen. Aber sie sind nicht:

Denken Sie an die beiden Parameter als ein Array von Strings und einer Größe des Arrays. Allerdings ist jede Saite in diesem Array von Strings tatsächlich ein Zeichen-Array. In den alten Tagen von C und früheren Rassen von C ++, nein Schnur Klasse war vorhanden. So waren Strings immer Zeichen-Arrays, in der Regel bezeichnet als char * MyString. (Denken Sie daran, ein Array und ein Zeiger kann zum größten Teil austauschbar verwendet werden).

So könnte man diese Sache nehmen und es in ein Array drehen - entweder durch Klammern am Ende zu werfen, wie es in char * MyString [], oder durch Nutzung der Tatsache zu machen, dass ein Array ein Zeiger ist und das Hinzufügen eines zweiten Zeigersymbol, wie in char ** MyString. Der folgende Code aus dem CommandLineParams Beispiel zeigt, wie Sie die Befehlszeilenparameter zu bekommen:

#einschließen using namespace std-int main (int argc, char * argv []) {int loop-for (loop = 0- Schleife lt; argc- Schleife ++) {cout lt; lt; argv [loop] lt; lt; endl-} return 0-}

Wenn Sie diese Anwendung zu kompilieren, benennen Sie die ausführbare Datei CommandLineParams, und führen Sie es dann aus der Eingabeaufforderung mit dem folgenden Befehl ein:

CommandLineParams abc def "abc 123"

Sie sehen die folgende Ausgabe. (Beachten Sie, dass der Name der Anwendung kommt als ersten Parameter und die angegebenen Elemente kommen in als einzigen Parameter.)

CommandLineParamsabcdefabc 123

Sie können auch Befehlszeilenargumente mit der IDE für Debugging-Zwecke angeben, wenn Sie mit dem Code :: Blocks Compiler arbeiten. Wählen Sie Projekt-Set-Programm der Argumente. Code :: Blocks zeigt das Select Target Dialogfeld, in dem Sie ein Ziel im ersten Feld wählen und die Argumente im Feld Programmargumente eingeben. Klicken Sie auf OK und dann auf Ausführen. CommandLineParams zeigt die Befehlszeilenargumente in dem Befehlsfenster, wie es tat, wenn Sie den Befehl an der Eingabeaufforderung eingegeben.

Menü