首页主机资讯c语言怎么传递二维数组

c语言怎么传递二维数组

时间2023-12-09 14:04:02发布访客分类主机资讯浏览406
导读:在C语言中,可以通过指针来传递二维数组。以下是两种常见的方式: 传递数组的指针: void func(int (*arr [3], int rows { for (int i = 0; i < rows; i++ {...

在C语言中,可以通过指针来传递二维数组。以下是两种常见的方式:

  1. 传递数组的指针:
void func(int (*arr)[3], int rows) {
    
    for (int i = 0;
     i  rows;
 i++) {
    
        for (int j = 0;
     j  3;
 j++) {
    
            printf("%d ", arr[i][j]);

        }
    
        printf("\n");

    }

}


int main() {

    int arr[2][3] = {
{
1, 2, 3}
, {
4, 5, 6}
}
    ;
    
    func(arr, 2);
    
    return 0;

}

  1. 传递指向指针数组的指针:
void func(int **arr, int rows, int cols) {
    
    for (int i = 0;
     i  rows;
 i++) {
    
        for (int j = 0;
     j  cols;
 j++) {
    
            printf("%d ", arr[i][j]);

        }
    
        printf("\n");

    }

}


int main() {

    int arr[2][3] = {
{
1, 2, 3}
, {
4, 5, 6}
}
    ;

    int *ptr[2] = {
arr[0], arr[1]}
    ;
    
    func(ptr, 2, 3);
    
    return 0;

}
    

注意:在第二种方式中,需要将二维数组转换为指针数组,即将二维数组的每一行的首地址存放在指针数组中。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: c语言怎么传递二维数组
本文地址: https://pptw.com/jishu/574787.html
java怎么读取txt文件中的字符串 ubuntu如何解压tar.gz文件

游客 回复需填写必要信息