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

不应将负数转为无符号数

12.4 ID_negativeUnsignedCast
目录 › next › previous

负数转为无符号数的适用场景有限,易导致意料之外的错误,应避免负数与无符号数的隐式转换,相关显式转换也应在合理的条件下完成。

本规则是 ID_signChangeCast 的特化。

示例:

size_t foo() {
    if (cond) {
        return -1;   // Non-compliant
    }
    ....
}

相关

ID_signChangeCast ID_minusOnUnsigned

参考

CWE-195 MISRA C++ 2008 5-0-4
Copyright©2024 360 Security Technology Inc., Licensed under the Apache-2.0 license.