MISRA C:2012 Rule­-15.4解析

时间:2026-03-04 05:00:19

MISRA-C:2012 规则适用于消息 0771:

Rule-15.4  (建议)对任何迭代语句至多只应有一条break 语句或goto 语句用于循环的结束

规则

规则与等级对应关系(QAC)官方示例

    /*PRQA S 2017,3408,3447 ++*/

    extern int x;

    extern int y;

    extern int z;

    extern void foo(int n)

    {

        while (n > 0)

        {

            --n;

            if (n == x)

            {

                break;                      /* Message 0769 */

            }

            if (n == y)

            {

                break;                      /* Message 0771 */

            }

            if (n == z)

            {

                break;                      /* Message 0771 */

            }

        }

    }修改举例

      违反规则的例子注意事项

        通过合并或反转判断条件达到消灭break的目的

© 2026 小猪经验网
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com