gpt4 book ai didi

C++ - 为什么 cin.eof() 读取最后一个字符两次?

转载 作者:太空狗 更新时间:2023-10-29 19:49:07 27 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Why is iostream::eof inside a loop condition considered wrong?


我有一个非常简单的问题......

#include<iostream>
using namespace std;
int main()
{
char x;
while(!cin.eof())
{
cin>>x;
cout<<"char: "<< x << endl;
}
return 0;
}


为什么当我尝试在 Linux 上运行这段代码时:
./file_name < test_file.txt
结果是:
字符:一个
字符:b
字符:c
字符:d
字符:d
当 test_file.txt 只有:
abcd

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com