课程
/后端开发
/C
/Linux C语言结构体
if(n==1)head=p1; else p2->next=p1; p2=p1;
为什么要让p1赋给p2?
2015-08-14
源自:Linux C语言结构体 5-2
正在回答
为了下一次输入时能够得到这个链表的尾结点,然后将这次的输入生成的结点链接到链表的最后成为新的尾结点,以此类推。如果不能很好理解的话,可以自己动手画一张图(下面的图仅是参考),会清晰很多: )
Aries的忧伤 提问者
举报
C语言的深入,帮助小伙伴们进一步的理解C语言,赶紧看过来
1 回答p1,p2本身不就是地址吗?为什么还要取它们的地址来scanf赋值?
1 回答p1=p2=(struct weapon*)malloc(sizeof(struct weapon));//可以把p2=去掉吗,p2=在这里有什么意义吗.
2 回答我觉得循环中的p2->next应该等于p1->next 为什么会是p2->next=p1有哪位大神看懂了能帮我解释一下吗?
4 回答这串代码是申请了两个'动态存储空间'分别给p1和p2,还是只是申请一了段'动态存储空间'将地址同时给了p1和p2
3 回答为什么要赋空呢