Przekazywanie danych do programu poprzez argumenty
Ostatnio zmodyfikowano 2009-01-04 01:33
zori Temat założony przez niniejszego użytkownika |
Przekazywanie danych do programu poprzez argumenty » 2009-01-03 15:53:34 Jest to mały programik który wymaga po przekompilowaniu utworzenia sktóry i właczenia z parmetrem "-Hello" (musi byc z dużej litery) kiedys może sie to komus przydać. Dokładniejszy opis zrobie jesli kogoś to zainteresuje bo tak to mam narazie cos innego do roboty :P #include <iostream> #include <conio.h> using namespace std;
int main( int argc, char * argv[] ) { if( argc == 1 ) return 0; if( strcmp( argv[ 1 ], "-Hello" ) == 0 ) cout << "dzieki za przywitanie" << endl; getch(); return 0; }
/edit nie trzeba tworzyć w sumie skróty ale to najprostrzy ze sporobów uruchamiania aplikacji z dowolnym parametrem. |
|
DejaVu |
» 2009-01-03 17:58:29 Zmieniłem trochę tytuł... |
|
zori Temat założony przez niniejszego użytkownika |
» 2009-01-03 17:59:57 Duzo kursów widziałem i nie było to opisywane.
P.S. Może byc taki tytuł |
|
lynx |
» 2009-01-03 18:09:23 Manfred każdy kiedyś zaczynał naukę C++, również Ty. Więc powinieneś zrozumieć kolegę, a nie go ośmieszać. Pewnie nie wszyscy to znają, a zwłaszcza początkujący. |
|
DejaVu |
» 2009-01-03 18:12:19 Potwierdzam. Warto zaznaczyć, że ja tego w kursie nie opisałem, a w sumie na pewnym etapie kursu powinno się to pojawić. |
|
pekfos |
» 2009-01-03 18:24:59 a w ogóle to co robią te "int agrc chr** argv"?? |
|
DeBugger |
» 2009-01-03 18:42:21 |
|
zori Temat założony przez niniejszego użytkownika |
» 2009-01-03 18:43:24 Biore się za opis. 1) Jesli jak w moim przykładie utworzymi sktót z jakims parametrem i uruchomimy aplikacje to zmienna "argc" zwróci wartość 2 jeśli nie to wróci wartośc 1 2)"if (argc == 1) return 0" ten warunek jest ważny ponieważ jesli argc zwróci wartośc 1 (jak w przykąłdzie) "if (strcmp(argv[1], "-Hello") == 0" to ten warunek sporoduje bład aplikacji. Funkcja strcmp() porównuje dwa teksty (podajemy je jako dwa parametry) funkacja zwraca 0 jesli teksty są takie same. 3)argv[0] - zwraca ścieszkę do pliku .exe argv[1] - zwraca z jakim parametrem został uruchomiony program To chyba wystarczy narazie co nie?? Mój przykład przerobiony na lepsze #include <iostream> #include <conio.h> using namespace std;
int main( int argc, char * argv[] ) { if( argc == 1 ) { if( strcmp( argv[ 1 ], "-Hello" ) == 0 ) cout << "dzieki za przywitanie" << endl; } getch(); return 0; }
Jak widać drugi warunek zostanie pominięty jeśli nie bedzie podany jakikolwiek parametr. |
|
« 1 » 2 3 |