我正在处理大型项目并遇到此错误: error: expected expression before '/' token
尝试使用// ...
在我的代码上注释掉一行时发生了这种情况。当我用/* ... */
据我所知,两种评论格式都是合法的:
1除了字符常量,字符串文字或注释之外,字符/ *引入注释。检查此类注释的内容仅用于识别多字节字符并查找终止它的字符* .83)
2除了字符常量,字符串文字或注释之外,字符//引入的注释包括所有多字节字符,但不包括下一个换行符。检查此类注释的内容仅用于标识多字节字符并查找终止的换行符。
这是特定于平台的问题吗?
编辑:我的项目使用gnu compiler
编译,并带有以下标志:-ansi -fno-zero-initialized-in-bss -Wall
。用-ansi
(或更新版本)替换-std=c99
可以解决问题。
答案 0 :(得分:4)
C99中引入了单行评论//
。如果您正在使用GCC或Clang,请使用选项-std=c99
或-std=c11
编译您的程序。
n1256-前言(第5页):
上一版的主要变化包括:
[...]
-//
评论
[...]