Tôi mới tham gia lập trình. Sự khác biệt giữa get () và getline () là gì?


Câu trả lời 1:

std :: basic_istream :: get - cppreference.com

std :: basic_istream :: getline - cppreference.com

#include 
#inc loại 

int chính ()
{
    {
    std :: iopesstream s1 ("Xin chào, thế giới.");
    char str [6];
    s1.get (str, sizeof str, ','); // đọc đến dấu phẩy; để lại dấu phẩy trên suối
    std :: cout << "sau khi đọc \" "<< s1.str () <<" \ "lên đến dấu phẩy bằng cách sử dụng istream :: get, \ n"
              << "mảng chứa \" "<< str <<" \ "\ n"
              << "ký tự tiếp theo cần đọc là '" << (char) s1.get () << "' \ n";
    }

    {
    std :: iopesstream s1 ("Xin chào, thế giới.");
    char str [6];
    s1.getline (str, sizeof str, ','); // đọc đến dấu phẩy; xóa dấu phẩy khỏi luồng
    std :: cout << "sau khi đọc \" "<< s1.str () <<" \ "lên đến dấu phẩy bằng cách sử dụng istream :: getline, \ n"
              << "mảng chứa \" "<< str <<" \ "\ n"
              << "ký tự tiếp theo cần đọc là '" << (char) s1.get () << "' \ n";
    }
}
sau khi đọc "Xin chào, thế giới." lên đến dấu phẩy bằng cách sử dụng istream :: get,
mảng chứa "Xin chào"
ký tự tiếp theo để đọc là ','
sau khi đọc "Xin chào, thế giới." lên đến dấu phẩy bằng cách sử dụng istream :: getline,
mảng chứa "Xin chào"
ký tự tiếp theo để đọc là ''

Người xem Coliru

Lập trình: Nguyên tắc và thực hành sử dụng C ++ (Ấn bản 2) (YAM321992789): Bjarne Stroustrup: Books