Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem ze strukturą

Ostatnio zmodyfikowano 2011-02-06 18:05
Autor Wiadomość
Tymek
Temat założony przez niniejszego użytkownika
Problem ze strukturą
» 2011-02-06 17:30:53
C/C++
#include <iostream>
using namespace std;

struct TSamochod
{
    char marka[ 20 ];
    char silnik[ 21 ];
    int rocznik[ 20 ];
    int numer_nadwozia[ 20 ];
    void wczytaj();
    void wypisz();
   
};
void TSamochod::wczytaj()
{
    cout << "podaj marke" << endl;
    cin >> marka;
    cout << "podaj silnik" << endl;
    cin >> silnik;
    cout << "podaj rocznik" << endl;
    cin >> rocznik;
    cout << "podaj numer nadwozia" << endl;
    cin >> numer_nadwozia;
}
void TSamochod::wypisz()
{
    cout << "marka : " << marka << endl;
    cout << "silnik : " << silnik << endl;
    cout << "rocznik : " << rocznik << endl;
    cout << "podaj numer nadwozia" << numer_nadwozia << endl;
   
}

int main()
{
    TSamochod x;
    int n;
    TSamochod * w =& x;
    cout << "podaj ile samochodow chcesz wprowadzic" << endl;
    cin >> n;
    for( int i = 0; i < n; i++ )
    {
        w->wczytaj();
        w->wypisz();
    }
   
    system( "pause" );
}

Napisz program definiujący zmienną typu TSamochod (marka, silnik, rocznik, numer nadwozia)
oraz wskaźnik do zmiennej typu TSamochod. Program powinien wczytać z klawiatury wartości pól
zmiennej. Zastosuj wskaźnik i operator adresu

Problem mam taki że jak dam int
C/C++
int rocznik[ 20 ];
int numer_nadwozia[ 20 ];
to jest błąd
a jak zamienię int na char to jest dobrze.. nie wiem dlaczego tak się dzieje może mi ktoś to wyjaśnić?
P-27911
pekfos
» 2011-02-06 17:33:29
a jaki błąd?
P-27912
Tymek
Temat założony przez niniejszego użytkownika
» 2011-02-06 17:35:07
no match for 'operator>>' in 'std::cin >> ((TSamochod*)this)->TSamochod::rocznik'
czyli coś w stylu jakby int był za mały o ile dobrze rozumiem , ale jak daje na większy to nadal jest błąd
oraz
           std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_ios<_CharT, _Traits>&(*)(std::basic_ios<_CharT, _Traits>&)) [with _CharT = char, _Traits = std::char_traits<char>]

candidates are: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>&(*)(std::basic_istream<_CharT, _Traits>&)) [with _CharT = char, _Traits = std::char_traits<char>]

a jak dam na char to jest dobrze....
P-27914
pekfos
» 2011-02-06 17:45:09
aaaaa.. nie możesz wczytać cinem całej tablicy intów! po co ci 20 pól na rocznik? po co w ogóle tablica?
P-27916
Tymek
Temat założony przez niniejszego użytkownika
» 2011-02-06 18:01:25
a fakt dzięki za odpowiedź :)
P-27918
pekfos
» 2011-02-06 18:05:19
nazwa tematu dość ogólna więc jeżeli uważasz że temat można zamknąć to uczyń to.
P-27920
« 1 »
  Strona 1 z 1