Cauchy - Szkoła Myślenia www.cauchy.pl//programy/c++/parametry-wiersza-polcen/     |     Dodaj do ulubionych13 listopad 2019

Łamigłówki podstawowa

|

Przedszkolaki

|

Kolorowanki

|

Rebusy

|

Krzyżówki

|

Wykreślanki

|

Algorytmy

|

Zabawy



Ostatnie OstatnieDo góry, menu nadrzędne, lista zadań Lista wszystkich tematówNastępne Następne

Parametry wiersza poleceń

Przykłady programów i funkcji w jężyku C++

Linia komend
W systemach Windows znajdziemy interpretator poleceń wpisywanych z klawiatury. Jest to program cmd.exe znajdujący się w katalogu c:\WinNT\system32. Korzystając z tego programu może wydawać polecenia systemu DOS/Windows jak również uruchamiać programy. Podobnie jest w systemach UNIX/Linux: mamy do dyspozycji okienko terminalowe gdzie możemy wydawać polecenia systemu oraz uruchamiać programy.
Parametry programu
Uruchamiając program z linii komend możemy podać parametry które zostaną przekazane do wykonywanego programu. Na przykład jeśli nasz program nazywający się NWD ma obliczać największy wspólny dzielnik dowolnej ilości liczb to wywołując polecenie:
> NWD 6 18 24
system operacyjny przekaże do programu NWD parametry: 6, 18 i 24. Jak pobrać i odczytać te parametry w naszym programie pisanym w C++? Czy można pobrać wszystkie parametry jakie są przekazywane do programu nie wiedząc ile tych parametrów jest?
Program wyświetlający parametry wiersza poleceń
Poniższy program pobiera wszystkie parametry przekazane do naszego programu i wyświetla je na ekranie. Główną role pełni tu funkcja WypiszArgumentyWierszaPolecen.
 #include <iostream>
 #include <conio.h>
 using namespace std;
 
 void WypiszArgumentyWierszaPolecen (int argc, char *argv[]);
 
 int main (int argc, char *argv[]) {
    WypiszArgumentyWierszaPolecen(argc, argv);
    getch();
 }
 
 void WypiszArgumentyWierszaPolecen (int argc, char *argv[]) {
    cout << "Liczba argumentow w wierszu polecen: " << argc << endl;
    for(int i=0; i<argc; ++i)
       cout << "Element numer " << i << " wiersza polecen ma wartosc: " 
 			<< argv[i] << endl;
 }
 
Krótki opis programu
Funckja main i jej argumenty
Normalnie funkcję main w C++ deklarujemy bez parametrów jako main(). Jednak funkcja main może mieć dwa parametry.
Pierwszy parametr funkcji main
Pierwszy parametr musi być typu int (integer) i oznacza ile jest argumentów w linii poleceń. Zwyczajowo (jeszcze z czasów języka C) zmienna ta nosi nazwę argc.
Drugi parametr funkcji main
Drugi argument musi być tablicą łańcuchów znakowych, czyli być typu char**. Również zwyczajowo zmienna to nosi nazwę argv. Jest to tablica zawierająca nazwę programu (argv[0]) oraz kolejne parametry podane przy wywołaniu programu w wierszu poleceń (argv[1], argv[2], ... aż do argv[argc-1]). Przy czym przyjmuje się, że kolejne argumenty linii komend są rozdzielone spacją. Przecinek nie rozdziela argumentów.
Funkcja WypiszArgumentyWierszaPolecen
Funkcja WypiszArgumentyWierszaPolecen otrzymuje:
  • Liczbę łańcuchów znakowych (rozmiar tablicy) jako zmienną argc
  • Tablicę łańcuchów znakowych argv i wypisuje te łańcuchy w pętli
Główną rolę w wypisywani pełni tu pętla:
for(int i=0; i<argc; i++)
Zmienna i pełni rolę licznika przy pomocy którego kolejny łancuch znakowy wartość (wartość zmiennej argv[i]) jest kierowany na standardowe wyjście (ekran) funkcją cout.
Funkcja main jest krótka
Funkcja main zawiera tylko dwie instrukcje:
  • Wywołanie funkcji WypiszArgumentyWierszaPolecen wypisującej parametry z linii komend (tablicę argv**)
  • Wywołanie funkcji getch() powodującej, że program przed zakończeniem będzie oczekiwał na wciśnięcie dowolnego klawisza.
Co wypisze nasz program
Przyjmując, że nasz program nazywa się po skompilowaniu argumenty_funkcji_main.exe, to uruchamiając go z linii komend:
> argumenty_funkcji_main.exe 123 213 22 2,3
otrzymany następujące komunikaty:
Liczba argumentow w wierszu polecen: 5
Element numer 0 wiersza polecen ma wartosc: argumenty_funkcji_main.exe
Element numer 1 wiersza polecen ma wartosc: 123
Element numer 2 wiersza polecen ma wartosc: 213
Element numer 3 wiersza polecen ma wartosc: 22
Element numer 4 wiersza polecen ma wartosc: 2,3

OstatnieDo góry, menu nadrzędne, lista zadańNastępne
OstatnieLista wszystkich tematówNastępne


Nie znalazłeś szukanej treści?
Poszperaj w serwisie cauchy.pl lub w sieci.
Google
 
Tapeta ze wzorami dotyczącymi logarytmów i funkcji logarytmicznej
 
Korepetycje, korepetycje z języka polskiego
 
 
Matury z lat 2002 - 2005. Zadania, rozwiązania zadań, schemat punktacji
 
(C) 2010 Szkoła Myślenia im. A. L. Cauchy        Napisz Napisz        Praca     Reklama
   korepetycje