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) { … }