| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 674 人关注过本帖
标题:不明白为什么比较失败
只看楼主 加入收藏
xxwpk007
Rank: 4
等 级:业余侠客
帖 子:166
专家分:289
注 册:2007-7-29
结帖率:100%
收藏
 问题点数:0 回复次数:4 
不明白为什么比较失败
include <stdio.h>
#include <string.h>
int main(void)
{
    FILE *ap,*bp;
    char name[10],ch[40];
    gets(name);
    ap = fopen(name,"r");
    bp = fopen("xx.txt","a+");
    while(fgets(ch,40,ap) != NULL)
    {
        printf("读取文件成功\n");
        if((strcmp(ch,"163")) == 0)
        {
            printf("比较成功\n");
            fputs(ch,bp);
        }
        else
            printf("比较失败\n");
    }
    fclose(ap);
    fclose(bp);
    return 0;
}

这里我想把文件一行一行的读入数组,再比较数组中是否有163如果有就把它写入另一个文件,
为什么比较不出来呢?
搜索更多相关主题的帖子: 失败 
2008-04-19 10:34
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
The result stored in string is appended with a null character.

The newline character, if read, is included in the string.

MSDN的解释。
试试看        if((strcmp(ch,"163\n")) == 0)

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-04-19 11:27
雨中飛燕
Rank: 1
等 级:新手上路
帖 子:765
专家分:0
注 册:2007-10-13
收藏
得分:0 
不要直接用strcmp,自己写一个吧

" border="0" />
2008-04-19 11:41
想谈恋爱
Rank: 1
来 自:PT
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-4-18
收藏
得分:0 
#include <stdio.h>
#include <string.h>
int main(void)
{
    FILE *ap,*bp;
    char ch[40];
    char name[10]="2.txt";
    ap = fopen(name,"r");//从2.txt中读取内容
    bp = fopen("1.txt","a+");
    while(fgets(ch,40,ap) != NULL)
    {
        printf("读取文件成功\n");
        if((strcmp(ch,"163")) == 0)
        {
            printf("比较成功\n");
            fputs(ch,bp);//输出到1.txt中
        }
        else
            printf("比较失败\n");
    }
    fclose(ap);
    fclose(bp);
    return 0;
}//帮你改了

输出结果:
读取文件成功
比较成功
2008-04-19 12:32
想谈恋爱
Rank: 1
来 自:PT
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-4-18
收藏
得分:0 
哦 对了 2.txt中内容务必是163
2008-04-19 12:34
快速回复:不明白为什么比较失败
数据加载中...
 
   



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

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