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

case 标签的值不可超出 switch 条件表达式的取值范围

9.5.3 ID_switch_caseOutOfRange
目录 › next › previous

如果 case 标签的值超出了 switch 条件表达式的取值范围,会导致相应分枝永远不会被执行。

示例:

void foo(char c)
{
    switch (c)
    {
    case 100:    // Compliant
        ....
        break;
    case 256:    // Non-compliant, unreachable branch
        ....
        break;
    }
}

例中变量 c 的值不可能为 256,所以 case 256 对应的分枝永远不会被执行。

相关

ID_illComparison

参考

CWE-561
Copyright©2024 360 Security Technology Inc., Licensed under the Apache-2.0 license.