Pomoc ze wskaźnikiem w funkcji
Ostatnio zmodyfikowano 2010-11-28 19:41
| Tymek Temat założony przez niniejszego użytkownika | Pomoc ze wskaźnikiem w funkcji » 2010-11-28 18:58:09 Napisz program definiujący zmienną typu TStudent(imię , nazwisko , data urodzenia )oraz wskaźnik do zmiennej typu TStudent. Program powinien wczytać z klawiatury wartości pól zmiennej. Zastosuj wskaźnik i operator adresu . #include <iostream>using namespace std;
 
 
 struct TStudent
 {
 char imie[ 20 ];
 char nazwisko[ 30 ];
 float data_urodzenia;
 void wczytaj();
 void wypisz();
 };
 
 void TStudent::wczytaj()
 {
 cout << "podaj imie" << endl;
 cin >> imie;
 cout << "podaj nazwisko" << endl;
 cin >> nazwisko;
 cout << "data_urodzenia" << endl;
 cin >> data_urodzenia;
 }
 void TStudent::wypisz()
 {
 cout << "imie=" <<& x << endl;
 cout << "podaj nazwisko" <<& x << endl;
 cout << "data_urodzenia" <<& x << endl;
 }
 int main()
 {
 TStudent x;
 
 TStudent * w =& x;
 void TStudent::wczytaj();
 void TStudent::wypisz();
 cout << "podaj Tdata" << endl;
 
 system( "pause" );
 }
 
Nie wiem za bardzo jak to ugryźć jak zdeklarować w funkcji wskaźnik?? | 
|  | 
| waxx | » 2010-11-28 19:13:10 w->wczytaj();
w->wypisz();
 
 | 
|  | 
| Tymek Temat założony przez niniejszego użytkownika | » 2010-11-28 19:14:04 Zrobiłem również bez funkcji , czy można tak? #include <iostream>using namespace std;
 
 
 struct TStudent
 {
 char imie[ 20 ];
 char nazwisko[ 30 ];
 float data_urodzenia;
 
 };
 
 int main()
 {
 TStudent x;
 
 TStudent * w =& x;
 cout << "podaj Tdata" << endl;
 
 cin >> w->imie;
 cin >> w->nazwisko;
 cin >> w->data_urodzenia;
 
 cout << "imie=" << x.imie << endl;
 cout << "naziwsko=" << x.nazwisko << endl;
 cout << "data_urodzenia=" << x.data_urodzenia << endl;
 
 system( "pause" );
 }
 
 | 
|  | 
| waxx | » 2010-11-28 19:16:13 mozna jak pola beda publiczne to ok | 
|  | 
| Tymek Temat założony przez niniejszego użytkownika | » 2010-11-28 19:17:10 co do funkcji to chodzi o taki zapis? int main(){
 TStudent x;
 
 TStudent * w =& x;
 cout << "podaj Tdata" << endl;
 void TStudent::w->wczytaj();
 void TStudent::w->wypisz();
 
 system( "pause" );
 
 | 
|  | 
| waxx | » 2010-11-28 19:18:39 Nie, przejrzyj kurs jak sie funkcje wywoluje.
Po prostu: w->wypisz(); lub x.wypisz();
 | 
|  | 
| Tymek Temat założony przez niniejszego użytkownika | » 2010-11-28 19:22:30 `x' undeclared (first use this function)  mam jeszcze tylko kłopot z jednym   błędem void TStudent::wypisz(){
 cout << "imie=" <<& x << endl;
 cout << "podaj nazwisko" <<& x << endl;
 cout << "data_urodzenia" <<& x << endl;
 }
 
jak mu pokazać żeby pokazywał wynik ze wskaźnika? | 
|  | 
| waxx | » 2010-11-28 19:34:35 musisz zrobic tak
void TStudent::wypisz()
 {
 cout << "imie=" <<imie << endl;
 cout << "podaj nazwisko" <<nazwisko << endl;
 cout << "data_urodzenia" <<data_urodzenia << endl;
 }
 
 metoda klasy/struktury ma dostep do zmiennych lokalnych danego obektu, no chyba ze sa jakies globalne [ale po co?;S]
 | 
|  | 
| « 1 »  2 |