m0_74749762 2024-05-14 15:47 采纳率: 0%
浏览 4

c++用指针实现矩阵乘法

帮忙看看,我这个矩阵乘法的函数为什么不对呗


```c++

double* Multiply(double* b, int row1, int col1) {
    c = new double[row * col1];
    *c = 0;
**
> **    if (col == row1) {
        for (int i = 0;i < row;i++) {
            for (int j = 0;j < col1;j++) {
                for (int k = 0;k < col;k++) {
                    double x = *(c + i * col1 + j);
                    *(c + i * col1 + j) = x+(*(a + i * col + k))* (*(b + k * col1 + j));
                }
            }
        }
    }
    else {
        printf("数组维度不同");
    }
    col = col1;
    return c;
}


```

  • 写回答

2条回答 默认 最新

  • 专家-皆知 2024-05-14 15:47
    关注

    请检查矩阵乘法中数组尺寸计算和内存分配是否正确。

    以上回复有部分引自免费微信小程序:皆我百晓生。 如问题尚未解决,还请稍待,如有疑问请回复进一步沟通。

    评论

报告相同问题?

问题事件

  • 创建了问题 5月14日