如何读取标准输入到std :: stringstream直到Ctrl-D(传输结束)?

Cha*_*har 2 c++ stringstream

如何对多行进行标准输入并将其存储到a中,std::streamstring直到用户按下Ctrl-D以指示输入结束?我想这样做这样,但对于输入的变量线.如何Ctrl-D通过用户按下的信号检查传输信号的结束?

    string std_input;
    stringstream stream(std_input);
    while (getline(cin, std_input))
        stream(std_input);     
Run Code Online (Sandbox Code Playgroud)

Zer*_*ges 5

在我看来,最简单的方法是将底层缓冲区传递std::cin给字符串流,因为它有重载std::basic_streambuf

std::ostringstream sstream;
sstream << std::cin.rdbuf();
Run Code Online (Sandbox Code Playgroud)