[英]End of File (EOF)
你好,我寫了一個算法,它打印最后一個數字,但我想知道當控制台/文件中沒有數字時,如何使它不打印“數字”的默認值,例如(4.94066e-324)。
#include <iostream>
using namespace std;
int main() {
double number;
for (; cin >> number;);
cout << number; }
一種方法是檢查第一個輸入操作是否成功:
#include <iostream>
int main() {
double number;
if(std::cin >> number)
{
while (std::cin >> number);
std::cout << number;
}
else
{
std::cout << "There is no number :(";
}
}
我在這里改變了幾件事:
using namespace std;
刪除using namespace std;
,這被認為是不好的while
更適合這項任務不是半空for
當然,這可以推廣到任何std::basic_istream
。
您可以使用標志來檢查您是否有任何輸入,如下所示:
#include <iostream>
using namespace std;
int main() {
double number;
bool flag = false;
for (; cin >> number;)
flag = true;
if(flag)
cout << number;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.