我已经创建了这个功能,但是对于大多数输入来说,它似乎崩溃并且给了我一个"分段错误:11"错误。对于以下代码可能导致分段错误的输入是什么?
int cubic_runtime(int const * const data, int n)
{
int max = 0;
int i;
int j;
int k;
int sum = 0;
for(i = 0; i <= n - 1; i = i + 1){
for(j = i; j <= n - 1; j = j + 1){
sum = 0;
for(k = i; k <= j; k = k + 1){
sum = sum + data[k];
}
if(sum > max){
max = sum;
}
}
}
return max;
}
答案 0 :(得分:0)
我可以添加以避免seg错误的一件事是:始终验证/健全 - 检查提供的输入。在这种情况下,&#39; n&#39;可以触发潜在的故障。我认为数据&#39;很好,因为它是只读的,我们只是阅读。