C++ 关于文件读取的问题
有intvalueifstreaminfile;infile.open("example.txt");infile>>value;如果此时读取完毕之后文件到达末尾if(!...
有
int value
ifstream infile;
infile.open("example.txt");
infile>>value;
如果此时读取完毕之后 文件到达末尾
if(!infile.good())
{
exit(EXIT_FAILURE):
}
那么 exit会不会执行? 展开
int value
ifstream infile;
infile.open("example.txt");
infile>>value;
如果此时读取完毕之后 文件到达末尾
if(!infile.good())
{
exit(EXIT_FAILURE):
}
那么 exit会不会执行? 展开
1个回答
展开全部
good()在无错情况下返回非0,所以if(!infile.good())这个判断在有错时才为“真”而执行exit(EXIT_FAILURE);。文件结束的EOF必须是发生“越过“结尾读取动作后才产生的,这里infile>>value;假设的是刚好读到最后一个数据,并没有”越过“文件结尾,所以不会产生EOF,也就不会使!infile.good()为真,自然不会执行exit(EXIT_FAILURE);。另:int value后少了分号,exit(EXIT_FAILURE)后应该是分号而不是冒号。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询