IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Vysvětlení String & Cin v C++

Aktivity
Avatar
Neaktivní uživatel:18.7.2014 19:44

Ahoj,
Prvně se omlouvám za dotaz,který do profi-programátorského fóra asi nepatří,ale potřebuju poradit od odborníků....Začal jsem se učit odusd C++,teď jsem u 5-6. Dílu. Pokud budu mít třeba tento kód:

        cout << "Ahoj,ja jsem papousek" << endl;
        cout << "Napis Neco..." << endl;
        string vstup;
        cin >> vstup;
        string vystup;
        vystup = vstup + "," + vstup + "!";
        cout << vystup << endl;
        _getch ();
        return 0;
}

Tak chápu jak funguje,ale nikde jsem nenašel,k čemu tam je "cin.XXX" a "String XXX",mohu požádat někoho o vysvětlení...?
Budu za to moc vděčný,Děkuji :)
PS:IDE je MVS 10 Expres

Odpovědět
18.7.2014 19:44
Neaktivní uživatelský účet
Avatar
Jan Demel
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Jan Demel:18.7.2014 20:06

Cin je něco jako Console.ReadLine() v C#. Což znamená, že program počká na zadání vstupu od uživatele. Ten vstup se potom jednoduše uloží do proměnné vstup, která má datový typ string (textový řetězec).

Nahoru Odpovědět
18.7.2014 20:06
To co se zdá být nemožné, je vždy možné.
Avatar
Odpovídá na Jan Demel
Neaktivní uživatel:18.7.2014 20:20

Takže pokud napíšu například:

string a;
cin >> a

Tak to znamená,že to co uživatel napíše,se do paměti uloží pod proměnou a ?

Nahoru Odpovědět
18.7.2014 20:20
Neaktivní uživatelský účet
Avatar
Jan Demel
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Jan Demel:18.7.2014 21:06

Na posledním řádku ti chybí středník ;) Ale ano. To co uživatel napíše se uloží do proměnné a.

Nahoru Odpovědět
18.7.2014 21:06
To co se zdá být nemožné, je vždy možné.
Avatar
Odpovídá na Jan Demel
Neaktivní uživatel:18.7.2014 21:20

Tak moc díky ;)

Nahoru Odpovědět
18.7.2014 21:20
Neaktivní uživatelský účet
Avatar
Bertram
Člen
Avatar
Odpovídá na Neaktivní uživatel
Bertram:22.7.2014 20:32

Jen te ještě upozorním, že pokud čteš z cin operátorem >>, tak ti ve vstupním bufferu zůstane konec řádku, a proto by jsi měl po tomto způsobu čtení zavolat cin.ignore(), aby jsi ten konec řádku z bufferu odstranil.
Kdyby jsi totiž chtěl dále v kódu číst třeba cin >> b, tak by se bez vyčištení bufferu do b uložil ten konec řádku a program by pokračoval bez čekání na zadání vstupu z cin.

 
Nahoru Odpovědět
22.7.2014 20:32
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.