lekcja 26 - blad kompilacji
Ostatnio zmodyfikowano 2013-08-26 14:54
PatraS Temat założony przez niniejszego użytkownika |
lekcja 26 - blad kompilacji » 2013-08-26 12:45:17 Witam, mam problem wyskakuje mi blad kompilatora :error: cannot convert 'std::string {aka std::basic_string<char>}' to 'std::string* {aka std::basic_string<char>*}' for argument '1' to 'void wypiszOsobe(std::string*, std::string*, int*)'| Nie wiem co mam zrobic... #include <iostream> #include <string> void wczytajOsobe( std::string imie, std::string nazwisko, int wiek ) { std::cout << "Podaj imie: " << std::endl; std::cin >> imie; std::cin.clear(); std::cin.sync(); std::cout << "Podaj nazwisko: " << std::endl; std::cin >> nazwisko; std::cin.clear(); std::cin.sync(); std::cout << "Podaj wiek: " << std::endl; std::cin >> wiek; std::cin.clear(); std::cin.sync(); }
void wypiszOsobe( std::string * imie, std::string * nazwisko, int * wiek ) { std::cout << "Twoje imie: " << imie << std::endl; std::cout << "Twoje nazwisk: " << nazwisko << std::endl; std::cout << "Twój wiek: " << wiek << std::endl; }
int main() { std::string imie[ 2 ]; std::string nazwisko[ 2 ]; int wiek[ 2 ]; for( int i = 0; i < 2; i++ ) wczytajOsobe( imie[ i ], nazwisko[ i ], wiek[ i ] ); for( int i = 0; i < 2; i++ ) wypiszOsobe( imie[ i ], nazwisko[ i ], wiek[ i ] ); return 0; }
|
|
killjoy |
» 2013-08-26 13:02:08 Funkcja chce od ciebie wskaźnika na string a ty podajesz mu normalnego stringa, bo operator [] jest w tym przypadku od razu dereferencją. Podaj mu argument w ten sposób imie + i lub & imie[ i ] . Możesz też zmienić funkcje aby przyjmowała referencje. |
|
PatraS Temat założony przez niniejszego użytkownika |
» 2013-08-26 14:54:21 ahh okey już rozumiem, wielkie dzieki. |
|
« 1 » |