| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 680 人关注过本帖
标题:奇怪的现象,寻高手解惑!
只看楼主 加入收藏
liuqianxue
Rank: 2
等 级:论坛游民
帖 子:21
专家分:20
注 册:2010-5-7
结帖率:0
收藏
已结贴  问题点数:20 回复次数:11 
奇怪的现象,寻高手解惑!

将数据写入磁盘文件,输入#是结束写入。如果把下面红色部分代码写成“while((ch=getchar())!='#')”,运行结果不一样,为什么呀?
#include <stdio.h>
main()
{
    FILE *fp;
    char  ch,filename[50];
    printf("please input file's name:\n");
    gets(filename);
    if((fp=fopen(filename,"w"))==NULL)
    {
       printf("cannot open file!");
       getch();
       exit(0);
    }
         ch=getchar() ;
    while (ch!='#')
    {
        fputc(ch,fp);
        ch=getchar();
    }
    fclose(fp);
}
搜索更多相关主题的帖子: 现象 解惑 
2010-11-30 21:02
vandychan
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
等 级:贵宾
威 望:18
帖 子:2296
专家分:6418
注 册:2010-8-20
收藏
得分:7 
while(getchar())!='#') 才是一样的

到底是“出来混迟早要还”还是“杀人放火金腰带”?
2010-11-30 21:05
outsider_scu
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:430
专家分:1333
注 册:2010-10-21
收藏
得分:7 
while((ch=getchar(),ch)!='#')
也可。

编程的道路上何其孤独!
2010-11-30 21:14
liuqianxue
Rank: 2
等 级:论坛游民
帖 子:21
专家分:20
注 册:2010-5-7
收藏
得分:0 
回复 2楼 vandychan
首先,谢谢你!
不过为什么(ch=getchar())==NULL;不可以呢?
2010-11-30 21:27
liuqianxue
Rank: 2
等 级:论坛游民
帖 子:21
专家分:20
注 册:2010-5-7
收藏
得分:0 
回复 3楼 outsider_scu
你可以说出我原来写的,得到的结果不同的理由吗
2010-11-30 21:29
liuqianxue
Rank: 2
等 级:论坛游民
帖 子:21
专家分:20
注 册:2010-5-7
收藏
得分:0 
回复 楼主 liuqianxue
while((ch=getchar())!='#'
为什么这样不行啊,它的运行过程是怎么样的呢,可以告诉我吗,谢谢!
2010-11-30 21:30
outsider_scu
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:430
专家分:1333
注 册:2010-10-21
收藏
得分:0 
你原来的那个有点歧义,具体可能和编制译器有关,反正我运行没问题。

编程的道路上何其孤独!
2010-11-30 21:35
liuqianxue
Rank: 2
等 级:论坛游民
帖 子:21
专家分:20
注 册:2010-5-7
收藏
得分:0 
回复 7楼 outsider_scu
啊,那哪里有歧义呢?
2010-11-30 21:37
outsider_scu
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:430
专家分:1333
注 册:2010-10-21
收藏
得分:0 
赋值表达示的返回值,不知道是不是没个编译器都返回左值。。

编程的道路上何其孤独!
2010-11-30 21:40
liuqianxue
Rank: 2
等 级:论坛游民
帖 子:21
专家分:20
注 册:2010-5-7
收藏
得分:0 
回复 9楼 outsider_scu
?????
2010-11-30 21:43
快速回复:奇怪的现象,寻高手解惑!
数据加载中...
 
   



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

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