簡體   English   中英

通過終端在文件中輸入時檢測 EOF(文件結尾)的問題

[英]Problem in detecting EOF (end of file) while giving input in a file via terminal

我正在運行我的代碼並通過 a.txt 文件( ./a.out<input.txt )提供輸入,但它似乎無法識別文件結尾。

當我復制 ubuntu 中的內容時,它可以工作。 我認為這些文件是在 MAC 中創建的。

EOF 就像終端中的 CTRL+C 一樣,因此它應該停止執行代碼,但最后一個命令不斷地被解析為輸入。 我無法更改文件(它是測試文件,格式不可更改。)。 誰能幫我解決這個問題? 我附上了我的代碼,但我認為這是文件問題。

編輯:我找到了解決方案。 通過添加

if(!getline(cin, s)){
   break;
}

或類似的線路,問題將得到解決!

我找到了解決方案。 通過添加

if(!getline(cin, s)){
   break;
}

或類似的線路,問題將得到解決!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM