Som nový v programovaní. Aký je rozdiel medzi get () a getline ()?


Odpoveď 1:

std :: basic_istream :: get - cppreference.com

std :: basic_istream :: getline - cppreference.com

#include 
#include 

int main ()
{
    {
    std :: istringstream s1 ("Ahoj, svet.");
    char str [6];
    s1.get (str, size str, ','); // prečítať na čiarku; zanecháva čiarku na toku
    std :: cout << "po prečítaní \" "<< s1.str () <<" \ "po čiarku pomocou istream :: get, \ n"
              << "pole obsahuje \" "<< str <<" \ "\ n"
              << "ďalší znak na čítanie je '" << (char) s1.get () << "' \ n";
    }

    {
    std :: istringstream s1 ("Ahoj, svet.");
    char str [6];
    s1.getline (str, size str, ','); // prečítať na čiarku; odstráni čiarku z prúdu
    std :: cout << "po prečítaní \" "<< s1.str () <<" \ "po čiarku pomocou istream :: getline, \ n"
              << "pole obsahuje \" "<< str <<" \ "\ n"
              << "ďalší znak na čítanie je '" << (char) s1.get () << "' \ n";
    }
}
po prečítaní „Ahoj, svet.“ za čiarkou pomocou istream :: get,
pole obsahuje „Ahoj“
ďalší znak na čítanie je „,“
po prečítaní „Ahoj, svet.“ za čiarkou pomocou istream :: getline,
pole obsahuje „Ahoj“
ďalší znak na čítanie je „“

Coliru Viewer

Programovanie: Princípy a prax pomocou C ++ (2. vydanie) (9780321992789): Bjarne Stroustrup: Books