问道尾插法的问题
struct list { int data;
struct list *next; };
typedef struct list node;
typedef node * link;
void main()
{ link ptr,head,tail;
int num,i;
tail=(link)malloc(sizeof(node));
tail->next=null;
ptr=tail;
prinft("\nplease input data:\n");
for(i=0;i<=4;i++)
{scanf("%d",&num);
ptr->data=num;
head=(link)malloc(sizeof(node));
head->next=ptr;
ptr=head;}
ptr=head->next
while(ptr!=null)
{printf("the value is %d.\n",ptr->data);
ptr=ptr->next }
};
红色字这两步的malloc都是一样的 问下返回值一样吗?我觉得应该是不一样 可是为什么呢? 还有第二步malloc后
语句是head->next=ptr; 这里是不是用了带头结点的指针? 谢谢各位的回答
[ 本帖最后由 gbs121 于 2011-3-7 15:15 编辑 ]