“错误:流浪'\ 342'”,“迷失'\'200'”,“迷失'\'213'”在C编译中

时间:2017-11-22 12:31:25

标签: c

这是我的代码

int main()​
{
    float avg, age[] = { 23.4, 55, 22.6, 3, 40.5, 18 };
    avg = average(age); /* Only name of array is passed as argument. */
    printf("Average age=%.2f", avg);
    return 0;
}

int main()中的编译错误:

error: stray '\342' in program
error: stray '\200' in program
error: stray '\213' in program

3 个答案:

答案 0 :(得分:5)

您的源文件中有“垃圾字符”。

\342 \200 \213e2 80 8b的八进制,它是UTF8中的零宽度空间(unicode U+200B),没有C编译器可以理解的东西(和你看不到的东西,零宽度,当UTF8正确显示时。)

- >使用文本或代码编辑器(即使不是windows'“notepad”应该这样做,如果不保存为UTF-8,但任何其他编辑器会更好)和/或集成开发环境来编写代码。不要使用可能会引入不需要的字符的文字处理器等。

答案 1 :(得分:1)

这似乎是代码中出现错误字符的问题。不可打印的字符,如╚或其他东西。例如在Notepad ++中打开代码,选择菜单选项以查看所有字符查看 - >显示不可见字符 - >显示所有字符并从代码中删除任何不良字符。

答案 2 :(得分:1)

代码看起来很好。

根据我个人的经验,stray '\xxx'通常是由于您的代码中使用了无效字符(字符串文字除外),如果您的语言不是英语,则会更频繁地发生这种情况。

例如,此代码会生成这样的错误:

int main(){return 0;}

我找不到有什么问题,所以我唯一的建议是确保您的IME切换为英语,然后再次输入代码