指向节点指针数组的节点指针

问题描述

我无法理解带有节点和数组的指针。假设我们具有以下结构:

typedef struct node
{
    int x;
    struct node *next;
}node;

如果我有一个节点指针数组,如:

node *table[50];

我可以说:

table[0] = malloc(26 * sizeof(node*));

有可能吗? 我的意思是table [0]是指向节点的指针,但是malloc将返回指向节点的指针的指针。 实际上,我想做多个(对于新数组中的每个指针,我想创建一个节点指针的新数组,最后最后一个数组的每个元素都有一个链表) 希望我很清楚,请原谅我的英语不好。

解决方法

malloc为您的数据分配空间。

table = (node*)malloc(50 * sizeof(node));

now表是指向内存中可以存储50个节点的空间的指针。

然后您可以将其用作数组:

table[n]