2

可能重复:
Xcode 给出 3 个语法错误,处理程序中的 Stray '\342'

if(mGamma[i−1][j] == min(mGamma[i − 1][j], mGamma[i][j − 1], mGamma[i − 1][j − 1]))

上面的行给了我这些错误:

/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\210’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\222’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\342’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\210’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\222’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\342’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\210’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\222’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\342’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\210’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\222’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\342’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\210’ in program
/home/rajat/iCub/tutorials/src/vectordtw.h:91:3: error: stray ‘\222’ in program

其中 mGamma 定义为vector<vector<double> > mGammamin函数采用三个值并返回最小值。这些错误来自哪里,我该如何摆脱它们?

4

1 回答 1

4

该错误消息意味着文件中的某些字节与编译器理解的任何字符都不对应,因此它会打印出它们的八进制值并告诉您这不可能是有效的 C(++) 程序。

您显示的字节序列似乎是 U+2212 MINUS SIGN 的 UTF-8 编码。尽管这是用于“正确”Unicode 文本中的减号的“适当”字符(这就是它以这种方式从 PDF 中复制出来的原因),但 C 系列的“基本源字符集”仍然以 ASCII 为中心;您需要用 U+002D HYPHEN-MINUS 替换每个减号。正如您通常键入的那样,用减号键入每个字符应该可以解决问题。

于 2012-11-05T00:48:29.907 回答