C++ C++;
我试图打印输入,然后打印tk向量中的所有字符串,如以下程序所示:C++ C++;,c++,iostream,C++,Iostream,我试图打印输入,然后打印tk向量中的所有字符串,如以下程序所示: int main() { while (true) { string input; cout << "prompt: "; cin >> input; vector<string> tk = {"this", "is", "an", "example"}; cout << input <
int main() {
while (true) {
string input;
cout << "prompt: ";
cin >> input;
vector<string> tk = {"this", "is", "an", "example"};
cout << input << endl;
for (int i = 0; i < tk.size(); i++) {
cout << tk[i] << endl;
}
}
return 0;
}
但结果是:
Hello
this
is
an
example
prompt: world
this
is
an
example
prompt:
有人知道这里出了什么问题吗?我想原因与缓冲区的工作方式有关,但我真的不知道细节。使用
>
将数据流化为字符串,读取单个单词,最多一个空格字符。因此您得到两个独立的输入,“Hello”
和“world”
要阅读整行:
getline(cin, input);
使用
>
将数据流传输到字符串中可读取单个单词,最多可读取一个空白字符。因此您得到两个独立的输入,“Hello”
和“world”
要阅读整行:
getline(cin, input);
使用
>
将数据流传输到字符串中可读取单个单词,最多可读取一个空白字符。因此您得到两个独立的输入,“Hello”
和“world”
要阅读整行:
getline(cin, input);
使用
>
将数据流传输到字符串中可读取单个单词,最多可读取一个空白字符。因此您得到两个独立的输入,“Hello”
和“world”
要阅读整行:
getline(cin, input);
缓冲区工作正常。
opreator>
背后的逻辑是。。。嗯。。。有点复杂。实际上,您正在使用一个独立的操作符>
作为输入流和一个字符串-
关键部分是:
[…]然后读取字符[…],直到下列条件之一变为真:
[……]
对于is中的下一个字符c为true(此空白字符保留在输入流中)std::isspace(c,is.getloc())
getline
还有一点值得记住:缓冲区工作正常。
opreator>
背后的逻辑是。。。嗯。。。有点复杂。实际上,您正在使用一个独立的操作符>
作为输入流和一个字符串-
关键部分是:
[…]然后读取字符[…],直到下列条件之一变为真:
[……]
对于is中的下一个字符c为true(此空白字符保留在输入流中)std::isspace(c,is.getloc())
getline
还有一点值得记住:缓冲区工作正常。
opreator>
背后的逻辑是。。。嗯。。。有点复杂。实际上,您正在使用一个独立的操作符>
作为输入流和一个字符串-
关键部分是:
[…]然后读取字符[…],直到下列条件之一变为真:
[……]
对于is中的下一个字符c为true(此空白字符保留在输入流中)std::isspace(c,is.getloc())
getline
还有一点值得记住:缓冲区工作正常。
opreator>
背后的逻辑是。。。嗯。。。有点复杂。实际上,您正在使用一个独立的操作符>
作为输入流和一个字符串-
关键部分是:
[…]然后读取字符[…],直到下列条件之一变为真:
[……]
对于is中的下一个字符c为true(此空白字符保留在输入流中)std::isspace(c,is.getloc())
getline
还有一点值得记住:这件事每天都会发生。人们总是忘记(或者他们没有正确地阅读他们的C++书籍),<代码> >代码>到一个字符串中。这个“问题”肯定有常见问题吗?每天都会出现类似的问题。人们总是忘记(或者他们没有正确地阅读他们的C++书籍),<代码> >代码>到一个字符串中。这个“问题”肯定有常见问题吗?每天都会出现类似的问题。人们总是忘记(或者他们没有正确地阅读他们的C++书籍),<代码> >代码>到一个字符串中。这个“问题”肯定有常见问题吗?每天都会出现类似的问题。人们总是忘记(或者他们没有正确地阅读他们的C++书籍),<代码> >代码>到一个字符串中。这个“问题”肯定有常见问题解答?可能是@dkg:No的重复,它会读取整个流(直到文件结尾或错误),不会给你一个字符串。@dkg:No,它会读取整个流(直到文件结尾或错误),不会给你一个字符串。@dkg:No,它会读取整个流(直到文件结尾或一个错误),不会给你一个字符串。@dkg:不,这会读取整个流(直到文件结尾或一个错误),也不会给你一个字符串。