代码检查与修复指南
在代码开发过程中,我们常常会遇到各种检查问题,如除零错误、函数未调用、函数不可达、函数未返回值以及指针非法解引用等。下面将详细介绍这些问题的检查和修复方法。
除零错误检查与修复
除零错误是一个常见且严重的问题,以下是处理该问题的步骤:
1. 避免除零的可能修复方法 :为避免除零,可约束 getVal 函数的返回值。例如,指定 getVal 返回的值在某个范围内,如 1 到 10。可以使用分析选项“Constraint setup (-data-range-specifications)”来指定约束。
2. 确定检查的根本原因 :
- 在进行 / 或 % 操作之前,检查分母是否为零。若分母为零,提供适当的错误处理。
- 若不期望分母为零,确定检查的根本原因。从分母变量开始跟踪数据流,找出可以指定约束以防止零值的点。
例如,对于以下代码:
void foo() {
double time = readTime();
double dist = readDist();
bar(dist,time);
}
void bar(double arg1, double arg2) {
double vel;
vel=arg1/arg2;
}
可能会发现:
- `bar` 函数被调用时参数值范
超级会员免费看
订阅专栏 解锁全文
1310

被折叠的 条评论
为什么被折叠?



