gpt4 book ai didi

c++ - std::istream 没有命令行?

转载 作者:行者123 更新时间:2023-11-28 01:02:00 25 4
gpt4 key购买 nike

基本上我有一个线程从 c++ std::istream 中读取

istream& getline ( istream& is, string& str );

当我将 istream 与 cin 绑定(bind)时,当我从标准命令行键入输入作为输入时它工作正常。

但我想知道是否有一种方法可以让读取线程 getline 获取字符串而无需使用实际的命令行?

基本上我想实现这个:

只需调用函数 WriteToIStream 和参数 str(而不是在命令行中键入 str),读取线程 getilne() 可以获得 str.

void WriteToIStream(string& str)
{
//...
}

非常感谢

最佳答案

cin只是一个输入流的一个实例,绑定(bind)到标准输入。对于您的情况,您可以使用 istringstream (或更一般地说是 stringstream )这是一个从字符串中读取的输入流:

std::istringstream istr("foobar");
getline(istr, some_string_variable);

这需要标准标题 <sstream> .

关于c++ - std::istream 没有命令行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8195349/

25 4 0
文章推荐: javascript - Protractor 页面对象 - TypeError : Object # has no method 'methodName'