加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何使用双指针分配2D数组?

发布时间:2020-12-16 10:54:48 所属栏目:百科 来源:网络整理
导读:我想知道如何使用双指针形成2D数组? 假设我的数组声明是: char array[100][100]; 如何获得具有相同分配和属性的双指针? 解决方法 使用指针指针动态分配2D数组的典型过程:: #include stdlib.h...T **arr; // for any type Tarr = malloc(sizeof *arr * ROW
我想知道如何使用双指针形成2D数组?

假设我的数组声明是:

char array[100][100];

如何获得具有相同分配和属性的双指针?

解决方法

使用指针指针动态分配2D数组的典型过程::

#include <stdlib.h>
...
T **arr; // for any type T
arr = malloc(sizeof *arr * ROWS);
if (arr)
{
  size_t i;
  for (i = 0; i < ROWS; i++)
  {
    arr[i] = malloc(sizeof *arr[i] * COLS);
    if (arr[i])
      // initialize arr[i]
    else
      // panic
  }
}

请注意,由于您分别分配每一行,因此数组的内容可能不是连续的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读