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

【MISRA C 2012】Rule 4.2 不应该使用三连符

  • 1. 规则
    • 1.1 原文
    • 1.2 分类
  • 2. 关键描述
  • 3. 代码实例

1. 规则

1.1 原文

Rule 4.2 Trigraphs should not be used
Category Advisory
Analysis Decidable, Single Translation Unit
Applies to C90, C99

1.2 分类

规则4.2:不应该使用三连符
Advisory建议类规范。

2. 关键描述

三字母由两个问号组成的序列,后面跟着一个指定的第三个字符(例如?? ?)-表示~(波浪)字符,??)表示[]。它们可能会与两个问号的其他用法意外混淆。

注:所谓有向图:

<::> <% %> %:%: %:

,因为它们是令牌。在预处理之前,三字符在程序中出现的任何地方都会被替换。

3. 代码实例

例1,规范中例程:

For example the string
"(Date should be in the form ??-??-??)"
would not behave as expected, actually being interpreted by the compiler as
"(Date should be in the form ~~]"
http://www.lryc.cn/news/237469.html

相关文章:

  • spring boot加mybatis puls实现,在新增/修改时,对某些字段进行处理,使用的@TableField()
  • 如何构建风险矩阵?3大注意事项
  • SpringSecurity5|12.实现RememberMe 及 实现原理分析
  • 持续集成交付CICD:Jenkins Sharedlibrary 共享库
  • Linux--网络编程
  • 数据结构 并查集
  • 算法通关村第十六关黄金挑战——求滑动窗口中的最大值(滑动窗口与堆方法、双端队列法和直接比较法)
  • 常见树种(贵州省):009楠木、樟木、桂木种类
  • 全志H616开发版
  • 【Spring boot】RedisTemplate中String、Hash、List设置过期时间
  • Nosql之redis概述及基本操作
  • 使ros1和ros2的bag一直互通
  • 【正点原子 linux 驱动编程】
  • 使用Python的turtle模块绘制玫瑰花图案(含详细Python代码与注释)
  • Redis学习笔记14:基于spring data redis及lua脚本ZSET有序集合实现环形结构案例及lua脚本如何发送到redis服务器
  • openssl C++研发之pem格式处理详解
  • 【教3妹学编辑-mysql】详解数据库三大范式
  • 【计算机网络笔记】路由算法之链路状态路由算法
  • 读像火箭科学家一样思考笔记04_第一性原理(下)
  • 开源集群管理系统对比分析:Kubernetes 与 Apache Mesos
  • matlab 坡度滤波算法地面分割
  • 【腾讯云 HAI域探秘】高性能服务器引领AI革新浪潮:从AI绘画、知识问答到PyTorch图像分类、视频检测的全方位探索
  • 【Java】ExcelWriter自适应宽度工具类(支持中文)
  • C++二分查找算法:132模式枚举3简洁版
  • Map 和 WeakMap:JavaScript 中的键值对集合
  • linux rsyslog综合实战1
  • redis+python 建立免费http-ip代理池;验证+留接口
  • 虚幻C++ day5
  • C#中的DateTime类
  • Flutter笔记:Matrix4矩阵变换与案例