這是一個使用stringstream的示例程序。目標是接受來自用戶的行(標準輸入)並在單獨的行中打印每個單詞。是否可以直接從用戶(標準輸入)接受字符串流?
int main()
{
std::istringstream currentline;
std::string eachword;
std::string line;
// Accept line from the standard input till EOF is reached
while (std::getline(std::cin,line))
{
currentline.str(line); // Convert the input to stringstream
while (currentline >> eachword) // Convert from the entire line to individual word
{
std::cout << eachword << std::endl;
}
currentline.clear();
}
return 0;
}
我想知道,有一種方法,我能避免中間字符串變量(對象),線,直接存儲用戶輸入到currentline(istringstream對象)。
注意:
我知道,下面的解決方案已經。
while (std::cin >> eachword)
{
std::cout << eachword << std::endl;
}
爲什麼不直接使用第二個解決方案? – 2010-08-08 17:38:32
尼爾,這就是我打算做的事。 – user373215 2010-08-08 17:46:55