标题:Dev C++ 用gets输入字符串,首元素是'\0'吗?
取消只看楼主
troyzyc
Rank: 1
等 级:新手上路
帖 子:108
专家分:0
注 册:2016-7-4
结帖率:56.6%
 问题点数:0 回复次数:0 
Dev C++ 用gets输入字符串,首元素是'\0'吗?
我的Dev C++编译器运行下边程序没有结果输出,而用VC++6.0就有正确输出,哪位大神知道怎么回事?我用Dev C++调试时,发现输入字符串后,a[0]仍是‘\0’,根本就没有进入while循环中,这是怎么回事?

输入字符串:adbcade和ade
结果:第5位相同

#include<stdio.h>
#include<string.h>
int main()
{
    char a[10];
    char b[3];
    gets(a);
    gets(b);
    int i=0;
    int j=0;

    while( a[i] != '\0' )
    {
        if(b[j]==a[i])
        {
            i++;
            j++;
            if(j==strlen(b))
                printf("第%d位相同\n",i-j+1);
        }   
        else
        {
            i++;
            j=0;
        }
    }
    return 0;
}
搜索更多相关主题的帖子: Dev C++ gets 输入 字符串 
2018-02-19 21:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-484792-1-1.html




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

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