这不是作业,它只是一个事实,我已经失学20多年了,我从来没有必要使用链表。所以我在这里摆脱了我的元素。 反正我有制作本地数据副本进入链表
struct Data_Struct {
char *Name;
char *Task;
char *Pos;
struct Data_Struct *Next;
};
typedef struct Data_Struct MyData;
这是一个链表一个非常简单的结构。
正如你所看到的,数据存储在char *中,当我填充列表时,我在那里复制指针。 一切都很好。当这些指针被覆盖并且我丢失了原始数据时,问题就开始了。我试图将数据复制到每个“list_add()”的本地char * malloc中,但是我一直在崩溃或丢失数据。 是的,我确实分配了,是的,我会复制数据并检查它是否正确复制。我尝试过使用memcpy,strcpy等等。
我出来的东西试试,所以我的问题是,我如何确保我将添加到列表中的数据是本地的。如何将那些进入列表的char *复制到局部变量中。
虽然如何做到这一点以及为什么我的代码不好的解释是好的,我更喜欢代码与解释。 谢谢。
Jess。