2012-11-28 11 views

risposta

24

Sì, guarda il valore di argc:

if (argc > 2) { 
    ... use argv[2] ... 
} 
0

si può provare il contrario. Prova il conteggio di argc, da lì puoi sapere la presenza di argv[n].

1

Il prototipo di main dice tutto:

int main(int argc, char **argv); 

Il primo parametro qui, argc porta il valore di Number_Of_Arguments(argv[])_Present

4

, argv[i] termina con NULL. argc è number of arguments passato alla funzione principale. Ottieni un'idea dal seguente codice.

#include<stdio.h> 
int main(int argc, char* argv[]){ 
    int i=0; 
    while(argv[i]!=NULL){ 
     printf("\n %s is argv %d ",argv[i],i); 
      i++; 
    } 

    printf("\n"); 
} 

desktop:~$ gcc main.c -o main 
desktop:~$ ./main grijesh thisiscrazy4 

    ./main is argv 0 
    grijesh is argv 1 
    thisiscrazy4 is argv 2 

qui argv era - "./main","grijesh","thisiscrazy4",NULL e argc = 3.

argv[0] è il nome eseguibile (percorso di esecuzione) può essere utilizzato per pinta con istruzioni di errore.
argv chiamato argomento vettore e argc chiamato contatore argomento. puoi anche usare un altro nome di variabile.

Leggi informazioni su full syntax of main() function che include anche le variabili di ambiente.

int main (int argc, char *argv[], char *envp[]) 
{ 
    return 0; 
} 

Learn HEAR

+0

In questo esempio 'argc == 3' in realtà - il percorso di esecuzione è considerato anche come argomento. – Archie

+0

@Archie Sì, sei corretto - Ho corretto il codice - Grazie –

+0

'AGGIUNTA ULTERIORI INFORMAZIONI SULLA PRINCIPALE SINTASSI' –