下面是我的代码
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
4条答案
按热度按时间kd3sttzy1#
你的源文件中有“垃圾字符”。
\342 \200 \213
是八进制的0xE 2 0x 80 0x 8B,在UTF-8中是一个 * zero width space *(UnicodeU+200B
),这是任何C编译器都无法理解的(也是您无法看到的,毕竟是零宽度,当UTF-8正确显示时)。x9ybnkn62#
代码看起来很好。
根据我的个人经验,
stray '\xxx'
通常是由于在代码中使用无效字符(字符串常量除外)而导致的,如果您的语言不是英语,这种情况会更频繁地发生。例如,以下代码生成这样的错误:
我找不到问题所在,所以我唯一的建议是确保您的IME切换为英语,然后再次键入代码。
nimxete23#
这似乎是代码中的错误字符的问题。字符是不可打印的,如或其他字符。打开代码,例如在记事本++中,选择菜单选项查看所有字符,菜单 * 查看 * → * 显示不可见字符 * → * 显示所有字符 * 并从代码中删除任何错误字符。
zkure5ic4#
使用以下网站。它会显示不良字符,然后将其删除: