Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C语言中不带malloc的链表_C_Linked List_Malloc_Free - Fatal编程技术网

C语言中不带malloc的链表

C语言中不带malloc的链表,c,linked-list,malloc,free,C,Linked List,Malloc,Free,是否可以使用malloc或free将无符号长插入到无动态内存的从最小到最大排序的链表中?您可以以数组的形式预先分配一组列表项,然后在插入时从该数组中拾取项。当然,只有当数组是全局的,或者在插入操作期间保持在范围内时,这才是可能的 比如: struct integerNode { int value; struct integerNode *next; }; struct integerNode nodes[100]; /* adjust for your

是否可以使用
malloc
free
无符号长
插入到无动态内存的从最小到最大排序的链表中?

您可以以数组的形式预先分配一组列表项,然后在插入时从该数组中拾取项。当然,只有当数组是全局的,或者在插入操作期间保持在范围内时,这才是可能的

比如:

struct integerNode {
  int                value;
  struct integerNode *next;
};

struct integerNode nodes[100]; /* adjust for your number of integers */

下一步是使用一个简单的
for
循环将
节点中的项目链接在一起,形成一个自由项目的链接列表。然后编写一个函数,将一个节点从空闲列表中断开链接,并将其链接到另一个列表中,同时插入数字。

您可以使用数组在列表中存储整数。您能用一个例子解释一下吗?对不起,我是新来的,你需要写一个函数,在数组中按给定的顺序插入整数。@vladfromscow,但这不会使它成为“链表”,对吗?@unwind它将是一个链表。数组只是一个分配器。