字符串比较在C中无法正常工作

用户名

我不知道为什么我的字符串比较没有正确比较。这是给C的。

它是从这样设置的文件中读取的:

1 - ls              
2 - cd                   
3 - history               

如果输入!c,则假定获取以'c'开头的最后一个使用的字符串并运行命令。但是,它永远不会进入if(strcmp(())= 0)行。

我的部分代码在这里:

  char currLine[MAXINPUTLINE];

    else if (isalpha(input[1])){
        int count = 1;
        fileRead = fopen(".simpleshell_history", "r");
        while(fscanf(fileRead, "%s\n", currLine) != EOF){
            printf(input+1);
            printf(currLine);
            if(strcmp((input+1), currLine) == 0){
                printf("%s\n", currLine);
                parse(currLine);
            }
        }
    }

这就是while循环中的printf所打印的内容,我不知道如何解决该问题,并且我已经坚持了一段时间。这是当我输入'!c'

 c
 1c
 -c
 lsc
 2c
 -c
 cdc
 3c
 -c
 historyc
 4c
 -c
 !c!c
蒂姆·皮尔斯

如果input是字符串,!c并且您希望将其与行匹配,2 - cd则必须小心。strcmp绝对不会起作用,因为只有在比较的两个字符串完全匹配时,它才会返回成功。

为了测试一个字符串(cd是否以另一字符串()开头c,您想使用strncmp(),这将限制要比较的字符数。

另外:你需要小心从开始的第二个字符比较input(跳过!),并从第五个字符currLine(跳过2 -字符)。

这应该使您到达那里:

    while (fgets(currLine, sizeof currLine, fileRead) != NULL) {
        printf(input+1);
        printf(currLine);
        if (strncmp(input + 1, currLine + 4, strlen(input)-1) == 0) {
            printf("%s\n", currLine);
            parse(currLine);
        }
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PHP中的字符串比较无法正常工作

来自分类Dev

C ++字符串比较无法正常工作

来自分类Dev

字符串比较无法正常工作

来自分类Dev

字符串比较无法正常工作

来自分类Dev

字符串比较无法正常工作

来自分类Dev

比较字符串无法正常工作

来自分类Dev

PHP字符串比较无法正常工作

来自分类Dev

字符串比较无法在python中按预期工作

来自分类Dev

PHP中的字符串替换无法正常工作

来自分类Dev

javascript中的字符串替换无法正常工作

来自分类Dev

C ++字符串->替换无法正常工作

来自分类Dev

字符串C#中的双斜杠无法正常工作

来自分类Dev

字符串排序无法正常工作

来自分类Dev

字符串格式无法正常工作

来自分类Dev

字符串匹配无法正常工作

来自分类Dev

将PHP变量字符串插入内联字符串中无法正常工作

来自分类Dev

基于字符串比较的单词翻译器程序无法正常工作

来自分类Dev

字符串中的比较如何工作?

来自分类Dev

尝试在C中使用sscanf()从文件中读取浮点数,整数和字符串的列表无法正常工作

来自分类Dev

删除字符串和arrayList中的字符无法正常工作

来自分类Dev

比较从.txt文件拆分的字符串无法正常使用Unity C#

来自分类Dev

无法进行批量字符串比较工作

来自分类Dev

跨度的jQuery搜索字符串无法正常工作

来自分类Dev

Powershell选择字符串无法正常工作

来自分类Dev

构造为字符串-strcat无法正常工作

来自分类Dev

处理字符串时,in_array无法正常工作

来自分类Dev

静态字符串的链式插值无法正常工作

来自分类Dev

子字符串无法在innerHtml上正常工作

来自分类Dev

if语句在字符串数据上无法正常工作:Excel

Related 相关文章

热门标签

归档