kowal Opublikowano 1 Listopada 2005 Udostępnij Opublikowano 1 Listopada 2005 zabrałem się za nauke języka c++ :) mam problemik: chcem zrobic programik ktory wymaga od nas podania imienie a po spacji nazwiska. Robilem to w ten sposob: char slowo [10] ale to mi nie pasuje bo ja chcem na przykład podac wiecej liter niz 10, moge zmienic na przyklad na [80] ale to tez zle bo ktos inny moze napisac wiecej znakow niz 80 i wtey ciąg będzie urwany. kiedyś cos na ten temt czytałm, ale zgubiłem wątek <_< help. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Vardi Opublikowano 1 Listopada 2005 Udostępnij Opublikowano 1 Listopada 2005 Dołącz plik nagłówkowy string.h i zadeklaruj zmienną w ten sposób: string slowo; Możesz jeszcze użyć drugiego sposobu czyli: char *slowo; Tego drugiego sposobu nie polecam nikomu. Pierwszy jest znacznie lepszy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 1 Listopada 2005 Filar Społeczności Udostępnij Opublikowano 1 Listopada 2005 Tak jak Vardi napisal, bo co masz sie meczyc z tablicami char'ow jak w C, skoro C++ oferuje obiekt string. Jest to znaczne ulatwienie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kowal Opublikowano 1 Listopada 2005 Autor Udostępnij Opublikowano 1 Listopada 2005 Już lepiej ale nie do końca :) Taki programos jest: #include <cstdlib> #include <iostream> #include <string.h> using namespace std; int main(int argc, char *argv[]) { string imie; cout<<"podaj imie" <<endl; cin>> imie; cout<< endl; cout<<"podales imie : " << imie <<endl; system("PAUSE"); return EXIT_SUCCESS; } jak pyta mnie o imie to pisze na prz. Jan (spacja) Kowalski, no a niestety podaje mi ze podalem tylko jan, bez kowalski bo jest po spacji, co w takim wypadku zrobic?? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Maximal Opublikowano 1 Listopada 2005 Udostępnij Opublikowano 1 Listopada 2005 Najprościej zrobić oddzielną zmienną dla imienia i nazwiska. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Mideooo Opublikowano 1 Listopada 2005 Udostępnij Opublikowano 1 Listopada 2005 Maximal ma rację ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Firemark Opublikowano 1 Listopada 2005 Udostępnij Opublikowano 1 Listopada 2005 mym zdaniem: system("PAUSE") zmień na getchar() EXIT_SUCCESS na 0 Być może to samo,ale mniejszy kod,co jest jednak ważne :] Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 1 Listopada 2005 Filar Społeczności Udostępnij Opublikowano 1 Listopada 2005 Uwaga co do tej linijki: #include <string.h> Czy przypadkiem nie powinno nie być tam ".h", ponieważ, jak mnie pamięć nie myli, niektóre biblioteki C++ tak właśnie są rozróżniane od bibliotek C. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kowal Opublikowano 1 Listopada 2005 Autor Udostępnij Opublikowano 1 Listopada 2005 Hmm ok. Ale patrzcie jeslina przyklad moj program ma zrobic tak: napiszemy jakis tekst np. fasdjfjfkasfh akjfhakfhak hafhakfhafhakh hfaskfhakfhafh akhfakfha. i potem nam na ekran wypisuje caly ten tekst, a nie pierwsza czesc az do spacji, tylko całe. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 1 Listopada 2005 Filar Społeczności Udostępnij Opublikowano 1 Listopada 2005 No i czemu się dziwisz? Przecież w swoim skrypcie nie ma żadnych ograniczeń itd. http://www.cplusplus.com/ref/cstring/ Powinieneś zrobić dwa zapytania, najpierw o imię a potem nazwisko. Jeżeli jednak chcesz to razem, to musisz skopiować ciąg znaków do pierwszej spacji do jakiejś zmiennej, potem uciąg ten ciąg znaków i skopiować resztę o ile nie ma kolejnej spacji (wtedy musisz powtórzyć kopiowanie do zmiennej). http://www.cplusplus.com/ref/cstring/ strncopy, strchr - zainteresuj sie tymi funkcjami. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Radzios Opublikowano 29 Maja 2006 Udostępnij Opublikowano 29 Maja 2006 a po polsku czegoś nie ma? bo mi tez by się przydało a angielskiego jeszcze na tyle nie znam... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
BeWuO Opublikowano 29 Maja 2006 Udostępnij Opublikowano 29 Maja 2006 A to tu nie ma tak jak w Delphi, ze dajesz np Readln(Imie, Nazwisko) a IFSem standardowo jest spacja? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Maximal Opublikowano 29 Maja 2006 Udostępnij Opublikowano 29 Maja 2006 Taki offtop: Radzios, bez angielskiego wiele nie osiągniesz i to nie tylko w programowaniu :) Warto się pouczyć. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
nadro Opublikowano 31 Maja 2006 Udostępnij Opublikowano 31 Maja 2006 Nie zrażajcie chłopaka, że bez angielskiego nie osiągnie zbyt dużo. Bo zawsze moża ma kumpla Polaka, który zna c++ i mu wytłumaczy wszystko :). A co do stl'ów to bardzo dobra klasa i nie musisz nawet znać takich komend typu getChars a sabie z tym poradzisz. Na tablicach i if'ach zrobisz wszystko co potrzebne. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Solmis Opublikowano 20 Listopada 2006 Udostępnij Opublikowano 20 Listopada 2006 #include <cstdlib> #include <iostream> #include <string.h> using namespace std; int main() { string imie; cout<<"podaj imie"; cin>> imie; cout<<"podales imie : " << imie << system("PAUSE"); return EXIT_SUCCESS; } Chyba cos takiego? Mi to chyba by weszlo. Nie wiem. Teraz robie w Win API. :] Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się