爷是少爷 2022-05-26 22:31 采纳率: 90%
浏览 41
已结题

动态二维数组的转置问题

问题遇到的现象和发生背景

今天写代码发现一个问题,就是动态二维数组可以通过传参的方式传到另一个函数吗?

问题相关代码,请勿粘贴截图

我的代码如下,我想将随便给定一个二维数组传到Acc里面并进行转置,当然 在主函数里转置已经完成了,当我们在使用的时候肯定不会是在主函数里使用吧,肯定是随机给出一个二维数组,最后给出转置后的结果,难在二维数组的行数和列数不确定,有知道的小伙伴一定要告诉我啊,谢谢

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

void Acc(int *acc, int n, int m)
{
    
}
int main()
{
    int arr[2][3] = { {1,2,3},{4,5,6} };
    
    int n = 0, m = 0;
    n = sizeof(arr) / sizeof(arr[0]);//计算二维数组的行数
    m= sizeof(arr[0]) / sizeof(arr[0][0]);//计算二维数组的列数
    Acc(&arr, n, m);
    ////定义动态二维数组
    //int** p;  //定义二维指针。
    //p = (int**)malloc(sizeof(int*) * m); //申请一组一维指针空间。
    //for (int i = 0; i < m; i++)
    //{
    //    p[i] = (int*)malloc(sizeof(int) * n);  //对于每个一维指针,申请一行数据的空间。
    //}
    ////将数组的值转置并赋值给动态数组
    //for (int i = 0; i < m; i++)
    //{
    //    for (int j = 0; j < n; j++)
    //    {
    //        p[i][j] = arr[j][i];
    //        printf("%d\t", p[i][j]);
    //    }
    //    printf("\n");
    //}

    ////释放内存
    //for (int i = 0; i < m; i++)
    //    free(p[i]);
    //free(p);
    return 0;
}

  • 写回答

2条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 6月4日
      • 已采纳回答 5月27日
      • 创建了问题 5月26日

      悬赏问题

      • ¥15 实值特征权重向量和特征选择,多分类
      • ¥15 INVEST年产水量模块结果出处理
      • ¥15 Neo4j 不显示关系
      • ¥15 这段代码有什么bug
      • ¥15 pip默认安装位置修改不成功
      • ¥15 C++ inline、staitc、const三合一谁能讲通透
      • ¥15 关于pyqt5中QThread的问题
      • ¥20 STM32基于HAL库使用串口发送16进制数组
      • ¥15 OpenCV报错 You can enable it via 'OPENCV_IO_ENABLE_OPENEXR'
      • ¥15 AT89C51的程序问题