☰
  • 首页
  • 规则分类
  • 项目介绍
search
•••

存在不符合词法的单引号或双引号

C++-Undefined-Behavior-4
目录 › next › previous

预处理器连接以反斜杠结尾的各行代码后将其转为预处理符号序列,在处理指令和展开宏之前,如果出现了不符合词法的单引号或双引号,会导致未定义的行为。

示例:

#defined X  '     // Undefined behavior
#defined Y  "     // Undefined behavior

例中的引号无法与其他字符组成预处理符号,可能不会通过编译,也可能产生非预期的结果。

依据

ISO/IEC 14882:2003 2.4(2)-undefined ISO/IEC 14882:2011 2.5(2)-undefined
Copyright©2024 360 Security Technology Inc., Licensed under the Apache-2.0 license.