[Powered by Google Translate] [Command-Line Arguments] [Christopher Bartholomew - Harvard University] [Dies ist CS50 - CS50.TV] Eine nützliche Funktion für ein Programm ist auf Benutzereingaben akzeptieren. Bisher haben wir einige Funktionen innerhalb der CS50-Bibliothek erkundet Benutzereingaben, wie anzunehmen "get Zeichenfolge" die den Benutzer auffordert, während die Anwendung ausgeführt wird, für einen String. Es gibt jedoch Fälle, in denen Sie Ihr Programm Input liefern wollen bevor es tatsächlich läuft. Auf diese Weise brauchen Sie nicht, um zusätzliche Informationen von Ihrem Benutzer fragen während der Ausführung eine einfache Aufgabe. Nehmen Sie zum Beispiel die mv oder MOVE-Befehl in UNIX. Dieser Befehl ermöglicht es dem Benutzer, eine Datei von einem Ort zum anderen zu bewegen. Nach den Handbuchseiten akzeptiert mv zwei Kommandozeilen-Argumente: Die Datei, die bewegt und die Lage der Datei wird verschoben. So dieses Beispiel einen Befehl mit zwei Argumenten. Wie können wir also sagen, unser C-Programm, um diese Befehlszeilenargumente nutzen? Nun stellt sich heraus, dass die wichtigsten, die wir in allen C-Programme, ein Geheimnis hat. Haupt akzeptiert zwei Parameter: argc und argv. Lasst uns über diese Begriffe gehen. Der erste Parameter, argc, die für argument count steht, hat einen Datentyp Integer. Die argc Parameter enthält die Anzahl der Argumente, einschließlich des Befehls. In unserem Fahrbefehl, obwohl wir nur haben zwei Argumente angezeigt, argc den Wert 3 sein. Der zweite Parameter, argv, die für Argument-Vektor steht, ist ein Array von char-Zeiger, die auf Strings. Dies bedeutet, daß jedes Element in argv, von null beginnend, enthält den Befehl und Argumente. Zum Beispiel, argv [0], die ich als argv Null beziehen, enthält immer den Befehl, der ausgeführt wird - in diesem Fall mv. argv [1] enthält das erste Argument, file.txt, und argv [2] wird das zweite Argument enthalten, ~ / CS50 /. Das letzte Argument argv wird immer null. Also lasst uns bei der Umsetzung dieser Kommandozeilen-Argumente. In vorangegangenen Übungen, legten wir nichtig, also nichts, als Haupt der Parameter. Um jedoch für uns zu nutzen Befehlszeilenargumente, wir brauchen für nichtig und im Inneren der wichtigsten int argc, char * argv [] entfernen. Nun, um das gesamte Element von argv, die Ihre Argumente sind zuzugreifen, Sie können einfach durchlaufen, oder eine Schleife durch das Array wie folgt. Also, im Inneren der wichtigsten Körper, wir gehen voran gehen und geben Sie eine for-Schleife: for (int i = 0; i . Also, lasst uns kompilieren und laufen und es ein tatsächliches Argument. Und, wie wir sehen können, haben wir nun die genaue Position jedes einzelnen char in der Argumentation. Das ist es also. Ich bin Christopher Bartholomäus; dies CS50. [CS50.TV]