逛奔的蜗牛

我不聪明,但我会很努力

   ::  :: 新随笔 ::  ::  :: 管理 ::
#include <iostream>
#include 
<stack>
#include 
<fstream>
#include 
<cstdio>

int main() {
    
// 片断1
    
//    std::ifstream file;
    
//    file.open("main.cpp");
    
//    
    
//    if (!file) {
    
//        std::cout << "Error" << std::endl;
    
//        return 1;
    
//    }
    
//    
    
//    char line[100];
    
//    while (!file.eof()) {
    
//        file.getline(line, 100);
    
//        std::cout << line << std::endl;
    
//    }

    
// 片断2
    FILE *fp = fopen("main.cpp""r");
    
if (!fp) {
        std::cout 
<< "Errof" << std::endl;
        
return 1;
    }
    
    
char line[100];
    
while (!feof(fp)) {
        fgets(line, 
100, fp);
        std::cout 
<< line;
    }
    fclose(fp);
    
    
return 0;
}


输出结果并不一样, C的会多输出一个}, 而C++的输出正常.
posted on 2008-04-12 00:29 逛奔的蜗牛 阅读(773) 评论(2)  编辑 收藏 引用 所属分类: C/C++

评论

# re: Feof的使用, C与C++的不同结果 2008-06-11 18:21
大哥你每次 fgets的时候 line没有清空啊 所以最后一次多的}是上一次的读的   回复  更多评论
  

# re: Feof的使用, C与C++的不同结果 2008-06-11 18:25 暗金装备
因为每次都去清空, 效率上又不太好了, 这个问题, 在C中用另一个办法解决.  回复  更多评论
  


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理