【发布时间】:2012-01-13 03:52:30
【问题描述】:
我有一个数组,我想通过将我的元素传输到节点来从中创建一个双向链表。并通过指针(上一个和下一个)链接它们 我所做的是
head = malloc(sizeof(struct)) 头->上一页=空 头->下一个=NULL 尾=头
for(i=0;i<num;i++){
//copy data from arr[i] to tail
temp=tail
tail->next=malloc(sizeof(struct))
tail=tail->next
tail->prev=temp
}
现在,我如何复制数据? temp、head 和 tail 是结构体的指针
【问题讨论】:
-
那么,您的问题是什么?您是否因为代码不是有效的 C 而收到编译器错误?或者那不是您所做的,而是您认为要记住您所做的事情(因为如上所述,这不是有效的 C)?
-
好的,但是这个结构的内容是什么?
-
我想将 arr[i] 的数据复制到 temp
-
结构 a{ 结构 b b1[33];结构 c c1[128]; ..
-
你当然可以使用
memcpy,但是很难说你的问题是什么。你只说你想做的事,但不说你为什么失败。再说一次,您发布的代码不是有效的 C,所以它要么不完全是您所做的,要么可能是您的问题,因为您无法编译。