26得票1回答
在C程序中,追踪数组越界访问/写入的推荐方法是什么?

考虑使用C语言为一些不太明显的算法编写实现。例如,让我们考虑递归快速排序,我在K.N. King的《C程序设计:现代方法》第二版书中找到了这个算法实现,可以从这里下载。最有趣的部分由以下两个定义组成:void quicksort(int a[], int low, int high) { ...

18得票3回答
一个C的移位表达式是否具有无符号类型?为什么Splint会警告右移操作?

以下是程序内容: int main(void) { int value = 2; int result = value >> 1U; return result; } Splint 3.1.2 给出警告: splint_test.c: (in fu...

8得票1回答
splint:for循环中解析错误

我正在使用splint作为C99代码的静态分析器。但是,Splint似乎不完全符合C99标准。因此,我应用了以下修补程序:http://www.cs.virginia.edu/pipermail/splint-discuss/attachments/20080718/52cc25f6/atta...

7得票1回答
Splint边界检查出现异常行为

有没有splint专家??我正在尝试使用splint对我在C中拥有的大型项目进行静态分析。我看到了过多的边界检查错误,这显然不是边界错误。我编写了一个小测试程序来尝试隔离问题,并在运行代码时注意到一些非常奇怪的警告。我有三个不同的示例,下面是第一个: int arr[3]; int mai...