该deviation函数向我抛出以下错误:"Array subscript is not an integer". 如果您能帮我找到错误的原因,我将不胜感激。
float average(float data[], int n) {
float total = 0;
float *p = data;
while (p < (data + n)) {
total = total + *p;
p++;
}
return total / n;
}
float deviation(float data[], int n) {
float data_average = average(data, n);
float total;
float *p = data;
while (p < (data + n)) {
total += (data[p] - data_average) * (data[p + 1] - data_average);
}
return total / 2;
}
Run Code Online (Sandbox Code Playgroud)
p是一个指向浮点数的指针。这就是您收到错误的原因。
float *p, total;
...
total += (datos[p]-prom)*(datos[p+1]-prom);
Run Code Online (Sandbox Code Playgroud)
您只能ints在 C 中用作数组索引。
| 归档时间: |
|
| 查看次数: |
75353 次 |
| 最近记录: |