当前位置: 首页 > news >正文

几个似非而是的注释问题

C 语言的注释可以出现在 C 语言代码的任何地方。这句话对不对?这是我当学生时我
老师问的一个问题。我当时回答是不对。好,那我们就看看下面的例子:
A ), int/*...*/i;
B ), char* s="abcdefgh //hijklmn";
C), //Is it a \
valid comment?
D), in/*…*/t i;
我们知道 C 语言里可以有两种注释方式: /* */ // 。那上面 3 条注释对不对呢?建议你
亲自在编译器中测试一下。上述前3条注释都是正确的,最后一条不正确。
A), 有人认为编译器剔除掉注释后代码会被解析成 inti ,所以不正确。编译器的确会将注
释剔除,但不是简单的剔除,而是用空格代替原来的注释。再看一个例子:
/* 这是 */#/* 一条 */define/* 合法的 */ID/* 预处理 */replacement/* */list/* */
你可以用编译器试试。
B), 我们知道双引号引起来的都是字符串常量,那双斜杠也不例外。
C), 这是一条合法的注释,因为 \ 是一个接续符。关于接续符,下面还有更多讨论。
D), 前面说过注释会被空格替换,那这条注释不正确就很好理解了。
现在你可以回答前面的问题了吧? 但注意: /*…*/ 这种形式的注释不能嵌套,如:
/* 这是 /* 非法的 */*/
因为 / * 总是与离它最近的 */ 匹配。
http://www.lryc.cn/news/105530.html

相关文章:

  • 【设计模式|上】创建型模式
  • 【JS】类 class
  • Ubuntu安装harbor(http模式)并随便上传一个
  • 《向量数据库指南》——腾讯云向量数据库Tencent Cloud Vector DB正式上线公测!提供10亿级向量检索能力
  • 1分钟解决github push/pull报错443
  • vue3学习-ref引用
  • Docker 容器转为镜像
  • 阿里云服务器免费试用及搭建WordPress网站
  • 整流二极管型号汇总,超齐全
  • MongoDB 操作命令
  • markdown高级写作技巧汇总
  • SpringBoot自动配置原理入门级理解
  • 2023 08.02 小记与展望
  • MaxPatrol SIEM 增加了一套检测供应链攻击的专业技术
  • 蓝桥杯上岸每日N题 第六期(求阶乘)!!!
  • Codeforces Round 889 (Div. 2)(视频讲解A——D)
  • K8s安全配置:CIS基准与kube-bench工具
  • linux安装python和部署Django项目
  • 00-Hadoop入门
  • SE-Net注意力机制详解
  • 商城免费搭建之java商城 开源java电子商务Spring Cloud+Spring Boot+mybatis+MQ+VR全景+b2b2c bbc
  • 推理加速 --- torch.compile
  • JS-----数据结构与算法(2)
  • 手把手安装TomCat;并部署JPress
  • tensorflow1.13分布式训练 参考资料 -教程原理
  • DP学习第五篇之礼物的最大价值
  • cURL error 1: Protocol “https“ not supported or disabled in libcurl
  • XCode升级后QT无法编译的问题
  • springboot编写mp4视频播放接口
  • 华为OD机试真题 JavaScript 实现【机器人活动区域】【2023Q1 200分】,附详细解题思路