string s;
getline(cin,s);
while (HOW TO WRITE IT HERE?)
{
inputs.push_back(s);
getline(cin,s);
}
2
A
回答
8
因爲我懶得給一個完整的答案今天,我就貼什麼## C++真正有用的機器人Freenode上有說:
使用「,而(流! .eof()){}「幾乎肯定是錯誤的。使用流的狀態作爲測試值:while(std :: getline(stream,str)){}。爲了進一步解釋見http://www.parashift.com/c++-faq-lite/input-output.html#faq-15.5
換句話說,你的代碼應該是
string s;
while (getline(cin, s))
{
inputs.push_back(s);
}
1
string s;
getline(cin,s);
while (!cin.eof)
{
inputs.push_back(s);
getline(cin,s);
}
+1
是的,它的工作原理和是的,它回答了所述的問題,但我更喜歡coppro更好,我很害怕。除了更簡單和更易維護,如果發生其他I/O錯誤,coppro的答案將正確退出。 – 2009-08-12 03:50:41
+0
你說得對。我沒有通過「知道它的eof」部分。 – Tom 2009-08-12 13:33:43
相關問題
- 1. C++ EOF Getline錯誤
- 2. C#WebClient.OpenRead如何知道eof是否?
- 3. C++ getline()和文件EOF
- 4. C++ - getline stdin EOF不工作
- 5. 如何確定變量是否是C#中的類型引用?
- 6. Getline和EOF
- 7. 如何確定是否使用' - >'與'。'
- 8. 如何在循環中使用getline C++
- 9. (練習1.6 K&R)如何確定getchar()!= EOF是0還是1?
- 10. 如何確定$ match是否在$ string中?
- 11. 確定文件是否以EOF字符正確結束
- 12. 確定是否使用LINQ
- 13. 我需要知道我是否正確使用getline
- 14. 如何確定C++ usertype是否已使用tolua註冊
- 15. 如何確定C數學是否使用SSE2?
- 16. 在C#中,如何確定給定的字符串是否是迴文?
- 17. 使用sendfile(),是否有可能知道in_fd何時處於EOF?
- 18. 如何確定在oracle中是否使用了哪個索引
- 19. 如何確定文件是否在使用中?
- 20. c#如何確定文件是否在ClearCase中
- 21. 如何確定隱式轉換是否存在於C#中?
- 22. 如何確定是否在C#中管理進程?
- 23. 如何確定是否存在特定的輸入使用CasperJS
- 24. 如何確定是否NSDate是今天
- 25. 如何確定System.Object是否是System.Type
- 26. 如何確定PropertyType是否是外鍵
- 27. 如何確定是否類型是Golang
- 28. 確定FTP URL是否是目錄名或使用C#
- 29. 不確定strpos()是否正確使用
- 30. 使用JNI/JVMTI - 如何確定jfieldID是否是靜態的
+1。 C++中的一個(可惜的是很少)時間,正確的選擇是直接的和慣用的。 – 2009-08-12 03:47:59