//m*n行列Aを用いてy = A*x +b を計算する
void fc(int m, int n, const float *x, const float *A, const float *b, float *y){
int i, j;
for (i = 0; i < m; i++){
y[i] = b[i];
for (j = 0; j < n; j++){
y[i] += A[i * n + j] * x[j];
}
}
}
这是对矩阵进行 AX+b 计算的代码。但如照片所示,发生了算术异常。为什么会这样?即使它是乘法并且没有除以0。我该如何解决这个错误?
抱歉,我无法添加这些值,否则我将不得不在此处添加整个文件。这些是神经网络的参数,我必须在此处添加 .dat 文件,然后我还需要其他可以加载这些文件的代码。另外,我不知道如何只从 .dat 文件中获取数字,它们的编码有点奇怪,所以。
否则我将提供所有其他信息,所以请不要关闭这个问题,我真的很想知道为什么会发生这种情况以及如何解决它。
这也是异常的另一个例子。 例子
我想知道的是,即使在这个例子中没有除以 0,这怎么可能发生。我该如何解释这种情况。