Se ho eseguito un programma C++Verificando argv [i] esiste C++
./program arg1
argv [1] Esiste, tuttavia c'è un modo per verificare se argv [2] esiste?
Se ho eseguito un programma C++Verificando argv [i] esiste C++
./program arg1
argv [1] Esiste, tuttavia c'è un modo per verificare se argv [2] esiste?
Sì, guarda il valore di argc
:
if (argc > 2) {
... use argv[2] ...
}
si può provare il contrario. Prova il conteggio di argc
, da lì puoi sapere la presenza di argv[n]
.
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
Sì, 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;
}
In questo esempio 'argc == 3' in realtà - il percorso di esecuzione è considerato anche come argomento. – Archie
@Archie Sì, sei corretto - Ho corretto il codice - Grazie –
'AGGIUNTA ULTERIORI INFORMAZIONI SULLA PRINCIPALE SINTASSI' –
Cosa circa il controllo 'argc'? – neuront