我需要用 C 编写一个 LinkedList,我在文件中定义了结构,因为struct element { int value; struct element * next; };
我还定义了一个 head 元素。这两个都不是本地的,它们是在整个运行时持续存在的变量。当我尝试使用来自外部的 -values 将元素插入到 LinkedList 中int
时,我需要element
在 this 周围加上一个int
. 我通过创建一个局部变量来做到这一点struct element e = { value; 0 };
。如果 head 为空,我将其设为 head,否则我使用 for 循环附加它。
e
我想的问题是,类型的局部变量struct element
在终止该函数时被删除。因此,如果我将头指向e
,它将继续指向未分配的内存点,因为局部变量e
不会在函数调用之后持续存在。
提前致谢!