单行注释不应以反斜杠结尾
3.5.4 ID_commentEndingBackslash
以反斜杠结尾的单行注释会将下一行也注释掉。
示例:
#define M \
fun0(); \
//fun1(); \ // Non-compliant, use /*fun1();*/ instead
fun2();
示例代码的本意是注释掉 fun1(),但由于结尾是反斜杠,fun2() 也被注释掉了。这种问题多出现在以反斜杠实现的多行宏定义中。
相关
参考
MISRA C 2012 3.2