Partager via


Arguments de ligne de commande C d'analyse

Spécifique à Microsoft

Le code de démarrage Microsoft C utilise les règles suivantes en interprétant les arguments spécifiés dans la ligne de commande du système d'exploitation :

  • Les arguments sont délimités par un espace blanc, qui peut être un espace ou une tabulation.

  • Une chaîne placée entre guillemets doubles est interprétée comme un argument unique, indépendamment de l'espace blanc trouve.Une chaîne entre guillemets peut être incorporée dans un argument.Notez que le signe insertion (^) n'est pas reconnu comme caractère d'échappement ou séparateur.

  • Un guillemet double précédé d'une barre oblique inverse, \ », est interprète comme un guillemet double littéral (Liens Ignorer la navigation).

  • Les barres obliques inverses sont interprétées littéralement, sauf si elles précèdent immédiatement un guillemet double.

  • Si un nombre pair de barres obliques inverses est suivi d'un guillemet double, une barre oblique inverse (\) est placée dans le tableau d' argv pour chaque paire de barres obliques inverses (\ \), et le guillemet double (Liens Ignorer la navigation) est interprétée comme délimiteur de chaîne.

  • Si un nombre impair de barres obliques inverses est suivi d'un guillemet double, une barre oblique inverse (\) est placée dans le tableau d' argv pour chaque paire de barres obliques inverses (\ \) et le guillemet double est interprétée comme une séquence d'échappement par la barre oblique inverse restante, et un guillemet double de littéral (Liens Ignorer la navigation) à placer dans argv.

Cette liste affiche les règles ci-dessus en affichant le résultat interprète passé à argv pour plusieurs exemples des arguments de ligne de commande.La sortie répertorié dans la deuxième, le tiers, et le quatrième les colonnes est du programme d'ARGS.C qui suit la liste.

entrée de ligne de commande

argv [1]

argv [2]

argv [3]

"a b c" d e

a b c

d

e

"ab\"c" "\\" d

ab"c

\

d

a\\\b d"e f"g h

a\\\b

de fg

h

a\\\"b c d

a\"b

c

d

a\\\\"b c" d e

a\\b c

d

e

Exemple

a1y7w461.collapse_all(fr-fr,VS.110).gifCode

// Parsing_C_Commandline_args.c
// ARGS.C illustrates the following variables used for accessing
// command-line arguments and environment variables:
// argc  argv  envp
//

#include <stdio.h>

int main( int argc, // Number of strings in array argv
 char *argv[],      // Array of command-line argument strings
 char **envp )      // Array of environment variable strings
{
    int count;

    // Display each command-line argument.
    printf_s( "\nCommand-line arguments:\n" );
    for( count = 0; count < argc; count++ )
        printf_s( "  argv[%d]   %s\n", count, argv[count] );

    // Display each environment variable.
    printf_s( "\nEnvironment variables:\n" );
    while( *envp != NULL )
        printf_s( "  %s\n", *(envp++) );

    return;
}

Commentaires

Un exemple de sortie de ce programme est le suivant :

Command-line arguments:
  argv[0]   C:\MSC\TEST.EXE

Environment variables:
  COMSPEC=C:\NT\SYSTEM32\CMD.EXE
 
  PATH=c:\nt;c:\binb;c:\binr;c:\nt\system32;c:\word;c:\help;c:\msc;c:\;
  PROMPT=[$p] 
  TEMP=c:\tmp
  TMP=c:\tmp
  EDITORS=c:\binr
  WINDIR=c:\nt      

détail de FIN Microsoft

Voir aussi

Référence

fonction principale et exécution du programme