dlaczego pomija tablice

0

Dlaczego, gdy wczytuje tablice np;
char a[100],b[100];

cout<<"wczytaj a"<<endl cin="cin">>a;
cout<<"Wczytaj b"<<endl;
cin>>b;

to gdy w a wpisze tekst typu kasia ma konta ze spacjami, to mi przeskoczy tablice b?Tzn nie pokaze sie juz zeby wpisac do talblicy b, tylko czesc zdania Kasia ma kota zostanie tam zapisana.

0

cin wczytuje do napotkania spacji, zainteresuj się getline

0

Jak już piszesz w c++ to używaj stringów z stla ;)
Jeśli koniecznie chcesz to zrobić na c-stringach:
getline lub wczytuj to w pętli for(int i=0; i<dl; i++) cin >> tab[i];

0

Ciagle przeskakuje. Te stringi sa w strukturze dokladniej mowiac , czyli, cin>>struktura.tekst;

0

Wlasnie to z get line nie dziala

cin.getline(struktura.tekst,150);

0

Pokaż kod, i zdefiniuj co znaczy "nie działa".

0
cout<<"podaj tekst:";
		
		cin.getline(struktura.tekst,150);
		

		cout<<"Podaj drugi tekst :"<<endl;
			cin.getline(struktura.tekst1,50);
			
		
		cout<<"Podaj trzeci tekst :"<<endl;
			cin.getline(struktura.tekst2,50);

i pokazuje sie na ekranie

Podaj tekst: Podaj drugi tekst < i tutaj juz mozna wprowadzac dane>. Pierwze getline zostalo zupelnie pominiete.

0
    char a[100];
    string b;
    cout<< "podaj a: ";
    cin.getline(a, 100);
    cout << "\npodaj b: ";
    getline(cin, b);


    cout << "\na: " << a;
    cout << "\nb: " << b;

Nie widzę problemu. Ewentualnie cin.sync(); bo każdym czytaniu.

0

Prawdopodobnie gdzieś Ci siedzi w strumieniu pozostawiony znak '\n'

0

Dziekuje. Sync pomoglo

1 użytkowników online, w tym zalogowanych: 0, gości: 1