Ted*_*Ted 3 c++ compiler-errors
在C ++中,多行注释以开头/*和结尾*/。
但是,如果发生以下情况,则会导致编译错误
/*
int a = 20;
/*
int b = 10;
*/
*/
Run Code Online (Sandbox Code Playgroud)
有什么原因为什么C ++不支持这种“嵌套注释”样式?
C ++标准对此进行了说明:
5.7注释[lex.comment]
1字符/*开始注释,该注释以字符结尾*/。这些注释不嵌套。字符//开始注释,该注释在下一个换行符之前立即终止。如果这样的注释中有换页符或垂直制表符,则在它和终止注释的换行符之间只能出现空格字符;无需诊断。[注意:注释字符//,/*和*/在//注释内没有特殊含义,与其他字符一样。同样,注释字符//,并/*有中没有任何特殊含义/*的评论。—尾注]
重点已添加。
由于注释/*内没有任何特殊含义/*,因此第一个*/后跟/*将被视为多行注释的结尾。然后,另一个*/将被视为悬空。
| 归档时间: |
|
| 查看次数: |
242 次 |
| 最近记录: |