zoukankan      html  css  js  c++  java
  • c语言 函数返回二位数组 函数参数为二维数组

    通过typedef可以简单实现。也可以直接写。

    写了两个简单的矩阵操作的函数简单示例。

     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 
     4 const int ROW = 3;
     5 const int COL = 4;
     6 
     7 typedef int (* mat_pointer)[COL];
     8 
     9 mat_pointer init_mat(mat_pointer a)
    10 {
    11     for (int i = 0; i < ROW; ++i)
    12         for (int j = 0; j < COL; ++j)
    13             a[i][j] = i + j;
    14     return a;
    15 }
    16 
    17 void print_mat(mat_pointer a)
    18 {
    19     for (int i = 0; i < ROW; ++i)
    20         for (int j = 0; j < COL; ++j)
    21             printf("A[%d][%d]=%d%c", i, j, a[i][j], j == COL - 1 ? '
    ' : '	');
    22     printf("
    ");
    23 }
    24 
    25 int (*build_mat(void))[COL]
    26 {
    27     int (* arr_pointer)[COL] = (int (*)[COL]) malloc(ROW * COL * sizeof (int));
    28     for (int i = 0; i < ROW; ++i) {
    29         for (int j = 0; j < COL; ++j)
    30             arr_pointer[i][j] = i * 10 + j;
    31     }
    32     return arr_pointer;
    33 }
    34 
    35 
    36 int main(void)
    37 {
    38     int arr[ROW][COL];
    39 
    40     mat_pointer arr2 = init_mat(arr);
    41     print_mat(arr2);
    42 
    43     int (*arr3)[COL] = build_mat();
    44     print_mat(arr3);
    45 
    46     return 0;
    47 }
  • 相关阅读:
    Java多线程同步和异步问题
    最优二叉查找树
    岛屿的周长
    Mac 环境下 go 国内代理配置
    岛屿数量
    字符串解码
    环形链表 II
    颜色分类
    无重复字符的最长子串
    完全平方数
  • 原文地址:https://www.cnblogs.com/wenruo/p/4801727.html
Copyright © 2011-2022 走看看