Latest web development tutorials

paramètres de ligne de commande C

Lors de l'exécution du programme, la ligne de commande peut transmettre des valeurs au programme C. Ces valeurs sont appeléesarguments de ligne de commande,ils sont importants pour le programme, surtout si vous souhaitez contrôler à partir d' un programme externe, et non pas dans le code lorsque ces valeurs sont codés en dur, il est particulièrement important.

paramètres de ligne de commande est d'utiliser la fonction main () pour traiter les paramètres,dans lequel, argc se réfère au nombre de paramètres transmis,argv [] est un tableau de pointeurs, chacun des paramètres passés au point de programme. Voici un exemple simple pour vérifier s'il y a une ligne de commande argument est fourni, et effectuer l'action appropriée en fonction des paramètres:

#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");
   }
}

Utilisez un paramètre, compiler et exécuter le code ci-dessus, il va produire les résultats suivants:

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

Deux arguments, compiler et exécuter le code ci-dessus, il va produire les résultats suivants:

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

Ne pas passer de paramètres, compiler et exécuter le code ci-dessus, il va produire les résultats suivants:

$./a.out
One argument expected

Il convient denoter, argv [0] pour enregistrer le nom du programme,argv [1] est un pointeur vers le premier argument de ligne de commande pointeur, * argv [n] est le dernier paramètre. Si aucun argument, argc sera 1. Dans le cas contraire, si vous passez unparamètre, argc serait fixé à 2.

Entre une pluralité de paramètres de ligne de commande séparés par un espace, mais si l'argument lui-même avec l'espace, puis passer des paramètres lorsque les paramètres doivent être placés entre guillemets "" ou des guillemets simples '' intérieur. Réécrivons l'exemple ci-dessus, il y a un espace, vous pouvez alors la vue, mettez-les entre guillemets doubles ou simples. "" "." Réécrivons l'exemple ci-dessus, pour passer d'un programme placé à l'intérieur des paramètres de ligne de commande de guillemets:

#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");
   }
}

Utilisez un simple paramètre séparés par des espaces, des paramètres entre guillemets, compiler et exécuter le code ci-dessus, il va produire les résultats suivants:

$./a.out "testing1 testing2"

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