| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 677 人关注过本帖
标题:关于文件函数的一些疑问
取消只看楼主 加入收藏
一个孩子
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:356
专家分:954
注 册:2012-10-1
结帖率:96.77%
收藏
已结贴  问题点数:5 回复次数:3 
关于文件函数的一些疑问
#include<stdio.h>
 main()
{
    FILE *fp;
    char ch;
    fp=fopen("e:\\exp02.txt","r");
    ch=fgetc(fp);
    while(ch=!EOF)
    {
        putchar(ch);
        ch=fgetc(fp); 这句代码在这有什么用呢?
    }

    fclose(fp);
}
为什么编译没有错误,结果总是显示不出来?(exp02已经创建有内容)





还有一个问题:



#include<stdio.h>
 main()
{
    FILE *fp;
    char ch;
    if((fp=fopen("E:\\exp01.txt","w"))==NULL)

    {
        printf("can not open file\n");
        return 0;
    }
    ch=getchar();
    while(ch!='#')
    {
        fputc(ch,fp);
        ch=getchar();
    }
    fclose(fp);
}
一个逻辑问题:exp01事先并没有创建,通过代码建立后内容应该是空的吧,按这种逻辑的话,应该返回不能打开文件的提示信心,为什么不是这样呢?
还有就是:第二个ch=getchar();的作用是什么?以前遇到过的说的是除了一般的接收单个字符功能外,就是接收回车符,保证程序继续运行,这里的也是这个作用吗?
搜索更多相关主题的帖子: file return include 疑问 
2012-10-04 12:48
一个孩子
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:356
专家分:954
注 册:2012-10-1
收藏
得分:0 
真是个牛人啊,已经把我大部分的疑问给解决了,特别是主函数的抒写方式让我受益匪浅,非常感谢!但是第一个程序按照你该的运行后还是无法显示结果
修改后变为
:#include<stdio.h>
int  main(void)
{
    FILE *fp;
    char ch;
    fp=fopen("e:\\exp02.txt","r");
    ch=fgetc(fp);
    while(ch=!EOF)
    {
        putchar(ch);
        ch=fgetc(fp);
    }
   
    fclose(fp);
    return 0;
}   还是无法显示exp02里面的内容,是不是运行环境的原因啊

重要的不是结果,是求一个结果的过程,哪怕千难万难,当你有想要的结果时,你已走的很远
2012-10-04 13:42
一个孩子
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:356
专家分:954
注 册:2012-10-1
收藏
得分:0 
改成fopen("exp02.txt","r"); 我这直接运行不成,还真不知道是咋回事了啊,难道是我的vc6.0出现了问题?

重要的不是结果,是求一个结果的过程,哪怕千难万难,当你有想要的结果时,你已走的很远
2012-10-04 15:08
一个孩子
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:356
专家分:954
注 册:2012-10-1
收藏
得分:0 
哈哈 ,大家都是热心人啊,问题终于解决了,谢谢大家。

重要的不是结果,是求一个结果的过程,哪怕千难万难,当你有想要的结果时,你已走的很远
2012-10-04 18:48
快速回复:关于文件函数的一些疑问
数据加载中...
 
   



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

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