| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 579 人关注过本帖
标题:一个简单的 C++ 程序,我到底错哪了??
只看楼主 加入收藏
豪仔仔
Rank: 1
等 级:新手上路
帖 子:4
专家分:4
注 册:2014-9-26
收藏
 问题点数:0 回复次数:1 
一个简单的 C++ 程序,我到底错哪了??
#include <iostream>
#include <string>
#include <fstream>  
using namespace std;
istream& f( istream &in )

{
    string ival;
        while (in >> ival, !in.eof())  
    {
        if(in.bad())
        throw    runtime_error("IO streamcorrupted");
        if ( in.fail() ) // bad input
        {
            cerr << " bad date, try again:";
            in.clear( );  
            continue;
        }
        cout << ival << endl;
    }
    in.clear();
    return  in;
}


int    main()
{
string filename;
cout << " enter the filename ( ctrl + z to end ):\n";
cin>>filename;
ifstream infile(filename.c_str());
if(!infile)
{
    cerr << " error: cannot open the input file:" << filename << endl;
    return -1;
}
f( infile );
system("pause");
return 0;
}


我那txt文件里面写的是hello word   然后我运行程序输入路径E:\\hello.txt  却什么也没有,文件也成功打开了(请按任意键继续。。。。)
求大神求解!!!
搜索更多相关主题的帖子: continue include return 
2014-11-11 23:26
豪仔仔
Rank: 1
等 级:新手上路
帖 子:4
专家分:4
注 册:2014-9-26
收藏
得分:0 
找到问题了!!把f函数的while里面的表达式去除!in.eof()就行了
但是eof()函数不是碰到文件结束符才返回true吗,怎么执行的时候碰到空格就返回true了????不懂,求大神教学
2014-11-11 23:55
快速回复:一个简单的 C++ 程序,我到底错哪了??
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016529 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved