Parametry wywołania programu

Transkrypt

Parametry wywołania programu
Parametry wywołania programu
int main(int argc, char ** argv) { … }
lub
int main(int argc, char * argv[]) { … }
Pierwszy argument (argc) określa liczbę podanych przez użytkownika parametrów wywołania
programu. Drugi argument (argv) to tablica parametrów wywołania programu. Pierwszym
parametrem wywołania programu (argv[0]) jest jego nazwa.
int main(int argc, char * argv[]) {
cout << ”Liczba parametrow: ” << argc << endl;
cout << ”Nazwa programu: ” << argv[0] << endl;
for (int i=1; i<argc; ++i)
cout << ”Parametr nr ” << i << ”: ” << argv[i] << endl;
return 0;
}
Wywołanie programu
Rezultat działania
./main
Liczba parametrow: 1
Nazwa programu: ./main
./main 123
Liczba parametrow: 2
Nazwa programu: ./main
Parametr nr 1 123
./main Ala ma kotka
Liczba parametrow: 4
Nazwa programu: ./main
Parametr nr 1 Ala
Parametr nr 2 ma
Parametr nr 3 kotka
Odczytując np. parametr o numerze 1 należy sprawdzić czy użytkownik podał odpowiednią liczbę
parametrów:
string parametr;
if (argc < 2)
cout << ”Podaj parametr” << endl;
else
parametr = argv[1];
Ze względu na to, że pierwszym elementem tablicy argv jest nazwa programu, aby sprawdzić czy
użytkownik podał odpowiednią liczbę parametrów należy sprawdzić czy argc jest o jeden większe
od oczekiwanej liczby parametrów.
Np. jeśli oczekujemy 3 parametrów należy sprawdzić warunek:
if (argc >= 4) { … }