strlen在Dev机器上返回不同的值

时间:2013-11-15 18:35:24

标签: strlen

嘿伙计我正在从混合字符串中提取一些单词。首先我从文本文件中获取带有fgets函数的行,当然\ n附带它。这是要处理的示例字符串;

{,(,),}\n\0

从字符串中丢弃\ n和','我正在使用此代码片段;

       int k=0;

        int inputWordIndex=0;

        while(k<strlen(tempInputLine))
        {
            if(tempInputLine[k]!=','&&tempInputLine[k]!='\n')
            {
                inputWord[inputWordIndex]=tempInputLine[k];
                inputWordIndex++;
            }
            k++;
        }
        inputWord[inputWordIndex]='\0';

此代码在我的计算机上运行良好,在-Wall -ansi模式下具有代码块。 strlen(inputWord)在我的计算机上返回4,而dev机器上完全相同的代码返回5.奇怪的是,在word结束后手动输入\ 0后,我无法用%s,inputWord命令打印它.Is有一个语法错误导致这种行为,在Dev机器上反应不好?

编辑:添加真实的样本文件。希望它不会被改变,因为我ctrl-A ed all。

{,(,),} (,(

0 个答案:

没有答案