The Power of 10: Rules for Developing Safety-Critical Code

Tue 23 September 2025

The Power of 10: Rules for Developing Safety-Critical Code | Wikipedia

    避免复杂的控制流结构,例如 goto 和递归。
    所有循环都必须有固定的边界。这可以防止代码失控。
    初始化后避免堆内存分配。
    将函数限制在一页打印页面内。
    每个函数平均至少使用两个运行时断言。
    将数据范围限制在最小可能。
    检查所有非 void 函数的返回值,或将其强制转换为 void 以表明返回值无用。
    预处理器仅用于头文件和简单宏。
    将指针的使用限制为单次解引用,并且不使用函数指针。
    激活所有可能的警告进行编译;在软件发布之前,应解决所有警告。

Category: 待整理