将链表头存储在2D阵列中

时间:2017-06-19 23:01:30

标签: arrays pointers struct linked-list malloc

我需要创建一个动态大小的2D矩阵,其中矩阵的每个元素都包含一个指向链表头部的指针。我用来定义头的代码如下:

struct Node
{
    int data;
    struct Node *next;
};
struct Node *head = NULL;
head = (struct Node *)malloc(sizeof(struct Node)); 
head->data = 1;
head->next = NULL;

然后我使用以下代码创建数组:

struct Node **array = (struct Node **)malloc(Nx * Ny * sizeof(struct Node *));
for(i = 0; i < Nx*Ny; i++)
    array[i] = head;

但我得到了分段错误。 提前谢谢。

0 个答案:

没有答案