c++ 函数返回二维数组
    在C++中,我们可以通过以下方式来返回一个二维数组:
    1. 使用指针:
    我们可以声明一个指向二维数组的指针,然后在函数中分配内存并返回指针。例如:
    ```
    int** func() {
    int rows = 3;
    int cols = 4;
    int** arr = new int*[rows];
    for (int i = 0; i < rows; ++i) {
    arr[i] = new int[cols];
    }
    // 将数组赋值
    for (int i = 0; i < rows; ++i) {
    for (int j = 0; j < cols; ++j) {
    arr[i][j] = i * j;
    }
    }
    return arr;
    }
    ```
    在这个函数中,我们首先声明了一个指向二维数组的指针`int** arr`,然后使用`new`关键字为其分配内存。在将数组赋值后,我们可以通过返回指针来返回这个二维数组。
指针与二维数组
    2. 使用数组:
    我们也可以使用数组来返回一个二维数组。例如:
    ```
    int (*func())[4] {
    int rows = 3;
    int cols = 4;
    int (*arr)[4] = new int[rows][cols];
    // 将数组赋值
    for (int i = 0; i < rows; ++i) {
    for (int j = 0; j < cols; ++j) {
    arr[i][j] = i * j;
    }
    }
    return arr;
    }
    ```
    在这个函数中,我们声明了一个返回一个`int(*)[4]`类型的数组。这意味着函数将返回一个指向具有4列的`int`类型二维数组的指针。和指针一样,我们使用`new`关键字为其分配内存,然后返回指向数组的指针。
    注意:在使用指针或数组返回二维数组时,需要在函数调用结束后手动释放内存,否则可能导致内存泄漏。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。