Latest web development tutorials

C-Befehlszeilenparameter

Wenn das Programm ausgeführt wird, kann die Befehlszeile Werte an das C-Programm übergeben. Diese Werte bezeichnet werden alsBefehlszeilenargumente, sie wichtig für das Programm sind, vor allem , wenn Sie von einem externen Programm steuern wollen, nicht im Code , wenn diese Werte sind hartcodiert, ist es besonders wichtig.

Kommandozeilenparameter ist main () Funktion zu verwenden Parameter zu verarbeiten,wobei argc auf die Anzahl der übergebenen Parameter bezieht,argv [] ist ein Array von Pointern, die jeweils die Parameter der Programmpunkt geleitet. Hier ist ein einfaches Beispiel, um zu überprüfen, ob ein Befehlszeilenargument vorgesehen ist, und führen Sie die entsprechenden Maßnahmen gemäß den Parametern:

#include <stdio.h>

int main( int argc, char *argv[] )  
{
   if( argc == 2 )
   {
      printf("The argument supplied is %s\n", argv[1]);
   }
   else if( argc > 2 )
   {
      printf("Too many arguments supplied.\n");
   }
   else
   {
      printf("One argument expected.\n");
   }
}

Verwenden Sie einen Parameter, zu kompilieren und führen Sie den obigen Code, wird es die folgenden Ergebnisse liefern:

$./a.out testing
The argument supplied is testing

Zwei Argumente, kompilieren und den obigen Code ausführen, wird es die folgenden Ergebnisse erzielt:

$./a.out testing1 testing2
Too many arguments supplied.

Übergeben Sie keine Parameter, zu kompilieren und führen Sie den obigen Code, wird es die folgenden Ergebnisse liefern:

$./a.out
One argument expected

Es sollteangemerkt werden, argv [0] , um den Namen des Programmszuspeichern,argv [1] ist ein Zeiger auf das erste Befehlszeilenargument Zeiger * argv [n] der letzte Parameter. Wenn keine Argumente, wird argc 1. anders sein, wenn Sie einenParameter übergeben, argc auf 2 würde eingestellt werden.

Zwischen einer Vielzahl von Kommandozeilen-Parameter durch ein Leerzeichen getrennt, aber wenn das Argument selbst mit Raum, dann Parameter übergeben, wenn die Parameter sollten 'innen in doppelte Anführungszeichen "" oder einfache Anführungszeichen' gesetzt werden. Lassen Sie uns das obige Beispiel umschreiben, ein Raum ist, dann kann man die Ansicht, setzen Sie sie in doppelte oder einfache Anführungszeichen. "" "." Lassen Sie uns das obige Beispiel umschreiben, ein Programm in doppelten Anführungszeichen Kommandozeilenparameter gesetzt weitergeben müssen:

#include <stdio.h>

int main( int argc, char *argv[] )  
{
   printf("Program name %s\n", argv[0]);
 
   if( argc == 2 )
   {
      printf("The argument supplied is %s\n", argv[1]);
   }
   else if( argc > 2 )
   {
      printf("Too many arguments supplied.\n");
   }
   else
   {
      printf("One argument expected.\n");
   }
}

Verwenden Sie einen einfachen Parameter durch Leerzeichen getrennt, in Anführungszeichen Parameter, zu kompilieren und führen Sie den obigen Code, wird es die folgenden Ergebnisse liefern:

$./a.out "testing1 testing2"

Progranm name ./a.out
The argument supplied is testing1 testing2