Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: c++ ja getline

raezel [05.04.2005 18:52:41]

#

Kaivelin tässä vanhat c++ harjoitukset kovalevyn nurkilta ja innostuin väsäilemään sillä jotain. Pamahdin kuitenkin ongelmaan heti alkutekijöissä. Minulla on seuraavanlainen koodi:

struct autot
{
    char nimi[20];
   	int kiihtyvyys;
	int huippunopeus;
	int ilmanvastus;
	int paino;
};

int main()
{
    autot auto1;
    autot auto2;

    {

     cout<<"Tervetuloa kisaan \n Anna autolle 1 nimi:\n";
     cin.getline(auto1.nimi,20);
     cout<<"Anna autolle "<<auto1.nimi<<" kiihtyvyysarvo(1-5)\n";
     cin>>auto1.kiihtyvyys;
     cout<<"Anna autolle "<<auto1.nimi<<" huippunopeusarvo(1-5)\n";
     cin>>auto1.huippunopeus;
     cout<<"Anna autolle "<<auto1.nimi<<" ilmanvastusarvo(1-5)\n";
     cin>>auto1.ilmanvastus;
     cout<<"Anna autolle "<<auto1.nimi<<" painoarvo(1-5)\n";
     cin>>auto1.paino;

     cout<<"Anna autolle 2 nimi\n";
     cin.getline(auto2.nimi,20);
     cout<<"Anna autolle "<<auto2.nimi<<" kiihtyvyysarvo(1-5)\n";
     cin>>auto2.kiihtyvyys;
     cout<<"Anna autolle "<<auto2.nimi<<" huippunopeusarvo(1-5)\n";
     cin>>auto2.huippunopeus;
     cout<<"Anna autolle "<<auto2.nimi<<" ilmanvastusarvo(1-5)\n";
     cin>>auto2.ilmanvastus;
     cout<<"Anna autolle "<<auto2.nimi<<" painoarvo(1-5)\n";
     cin>>auto2.paino;

Ongelmana on, että tuo auto2.nimi ottaa automaattisesti arvokseen " " eli kysymys käy ruudulla mutta tulkitsee itsensä heti vastatuksi tuolla arvolla. Mistä moinen?

EDIT: Jahas. ongelma ratkesi korvaamalla cin.getline gets:illä.

Jyri [05.04.2005 20:38:04]

#

Mullakin on ollu ongelmia ton cin.getlinen kanssa, eikä oo toiminu ees toi get :(

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta