永发信息网

C语言里面什么叫做嵌套注释

答案:2  悬赏:0  手机版
解决时间 2021-04-04 16:57
  • 提问者网友:皆是孤独
  • 2021-04-04 08:19
C语言里面什么叫做嵌套注释
最佳答案
  • 五星知识达人网友:爱难随人意
  • 2021-04-04 09:03
C语言嵌套注释

对于一个允许嵌套注释的C编译器,无论上面的符号序列后面跟什么,都属于注释的一部分;而对于不允许嵌套注释的C编译器,后面跟的就是实实在在的代码内容。也许有人因此想到可以在后面再跟一个用一对引号引起的注释结束符:
"*/"
如果允许嵌套注释,上面的符号序列就等效于一个引号;如果不允许,那么就等效于一个字符串"*I"。因此,我们可以接着在后面跟一个注释开始符以及一个引号:
"*/"**/ "*/"
这样,如果允许嵌套注释,上面的表达式就等效于""。

0*1
这个解法主要利用了编译器作词法分析时的“大嘴法”规则。如果编译器允许嵌套注释,则上式将被解释为:
0*1
两个符号正好匹配,所以上式的值就是1。如果不允许嵌套注释,注释中的*/0*1
它的值就是0*1,也就是0o

#define A a
#define B */

bool CanNesting()
{
#ifdef B
return false;
#else
return true;
#endif
}
全部回答
  • 1楼网友:神的生死簿
  • 2021-04-04 10:18
比如:
aaa*/
这样的注释。有的编译器看到bbb后面的*/就会以为注释结束了。这就出错了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯