数据结构的高手请进。 祝csdn的网友节日幸福快乐
rfa20 2000-09-12 07:33:00 已经有单链表la, 编制函数复制一个有同样结构的单链表lb
typedef struct SLNode //定义结构体
{
int Data;
struct SLNode *Next;
} slnodetype;
int CopySL(slnodetype *la, slnodetype **lb) //复制函数
{
slnodetype *p,*q,*s;
if((*lb=(slnodetype *)malloc(sizeof(slnodetype)))==NULL)
return 0;
(*lb)->Next=NULL;//初始化单链表lb
p=la->Next;
q=(*lb)->Next; (1)
while (p!=NULL)
{
if((s=(slnodetype *)malloc(sizeof(slnodetype)))==NULL)
return 0;
s->Data=p->Data;
s->Next=NULL;
q->Next=s; (2)
p=p->Next;
}
return 1;
}
问1:
这是数据结构书上的原题,我觉得有些不对,
我觉得(1) 和下面的(2) 有些矛盾。
一个接点(结构体)的地址可以是NULL吗???
问2:
s=(slnodetype *)malloc(sizeof(slnodetype));
和
slnodetype * s;有什么不同??
谢谢各位。
祝各位佳节幸福快乐!