今天在调试代码时为了偷懒, 直接在有反斜杠的代码前加了行注释//, 结果导致编译不过
查下了下资料, 原因如下:
在C/C++语言中,
在对源文件做预处理的时候,有两条基本原则:
1、凡是以//开头的为单行注释
2、凡是以\结尾的代表此行尚未结束
于是预处理器在处理的时候会先按第二条规则,看每行的末尾的那个字符是不是”\”,是的
话,就下一行接到本行。
然后把所有以//开头的注释和/* */的块注释去掉
---------------------
作者:lyd0813
来源:CSDN
原文:https://blog.csdn.net/lyd0813/article/details/83023918
版权声明:本文为博主原创文章,转载请附上博文链接!
博客地址:https://blog.csdn.net/lyd0813/article/details/83023918
同时自己也做了个小实验, 在ubuntu的vim上很容易看出多行注释(multi-line comment), 但是在公司的source insight上硬是没看出来, CSDN贴上的代码也没有显示出来
1 #include <stdio.h>
2 #include <strings.h>
3 #include <stdlib.h>
4
5 int main(void)
6 {
7 //simulate multi-comment \
8 int a = 5;
9 printf("va