流浪“\ 303”并在程序中迷失“\ 215” – 为什么?

我没有在我在这里找到的程序中迷路“\ 302”,而是收到了错误消息:

algo.c:118: error: stray '\303' in program algo.c:118: error: stray '\215' in program 

我似乎无法弄明白,这是什么?

  • 编辑

为了将来参考,stray’\ XXX’对编译器来说意味着难以理解的字符。 解决方法是找到’\ XXX’字符(现在我发现它并不总是这个unicode,它不能是一个错误的定义,例如’## define’中的’##’),然后删除或纠正它。 祝好运!

这些是:

 00C3 LATIN CAPITAL LETTER A WITH TILDE : 0041 0303 U+00C3, character Ã‬, decimal 195, hex 0xC3, octal \303, binary 11000011 UTF-8: 0xc3 0x83 008D  = REVERSE LINE FEED U+008D, character ‬, decimal 141, hex 0x8D, octal \215, binary 10001101 UTF-8: 0xc2 0x8d 

我猜这些不是故意的。 如果你在窗口完全加载之前开始输入并完成它的stty有时在终端中进行编辑会产生这种情况。 我经常在emacs看到这种事情。

解决方案:转到相应的行并删除字符。 cat -teless用于识别哪些字符有问题。

作为一个额外的答案,当我想输入需要Alt Gr组合的字符时,它会发生在我身上。 通常我的手指滑落,导致隐藏的垃圾特征。 如上所述,更好的解决方案是重写斑点线。

在代码中使用非ASCII字符可能会导致此错误。 我在enum使用öäü…获得了sam问题