gpt4 book ai didi

c++ - 在 C++ 中使用 sizeof() 遍历二维数组

转载 作者:行者123 更新时间:2023-11-30 04:54:56 25 4
gpt4 key购买 nike

<分区>

我正在尝试编写一个小型 C++ 库来进行简单的矩阵计算。它由一个 Matrix 类和改变给定矩阵的静态成员函数组成。

我有一个函数可以为每个元素添加一个标量,但是循环不起作用:

// Member function to add a scalar to the matrix
void Matrix::add_scal(double** arr, double s) {
for (size_t x = 0; x < sizeof(arr) / sizeof(*arr); ++x) {
Serial.println("test");
for (size_t y = 0; y < sizeof(*arr) / sizeof(**arr); ++y) {
arr[x][y] += s;
}
}
}

“测试”只打印一次,内循环根本不运行。这是我用来创建矩阵的函数:

double** Matrix::init(int rows, int cols) {
double** temp = new double*[rows];
for (int i = 0; i < rows; i++) {
temp[i] = new double[cols];
for (int j = 0; j < cols; j++) {
temp[i][j] = 0.0;
}
}
return temp;
}

以下两行创建了一个矩阵并向其添加了一个标量:

double** test = Matrix::init(3, 3);
Matrix::add_scal(test, 2.5);

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com