KeY_CZN 2023-12-16 18:17 采纳率: 50%
浏览 7
已结题

关于函数返回二维数组的问题

关于函数返回二维数组的问题

int** get()
{
    int temp[3][3] =
    {
        {3, 2 ,1},
        {0, 0, 0},
        {0 ,0 ,0}
    };
    return temp; // 报错:返回值类型与函数类型不匹配
}
  • 写回答

2条回答 默认 最新

  • 关注

    一般没这么玩的.

    #include <stdio.h>
    
    int (*get())[3]
    {
        static int temp[3][3] = {{3, 2, 1}, {0, 0, 0}, {0, 0, 0}};
        return temp;
    }
    
    int main()
    {
        int(*ptr)[3] = get();
        for (int i = 0; i != 3; ++i)
        {
            for (int j = 0; j != 3; ++j)
            {
                printf("%d\n", ptr[i][j]);
            }
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月24日
  • 已采纳回答 12月16日
  • 创建了问题 12月16日