c语言关于下面的结构体代码我有一些疑问?
第一,为什么p2不用向p1一样申请空间?第二,他的head指针从头到尾出现了两次,我总觉得返回的head跟第二种情况没啥关系啊?第三,p2的操作是什么意思,我没看懂...
第一,为什么p2不用向p1一样申请空间?第二,他的head指针从头到尾出现了两次,我总觉得返回的head跟第二种情况没啥关系啊?第三,p2的操作是什么意思,我没看懂
展开
1个回答
展开全部
问题1:p2设计是用来指向上次申请空间的结构体指针,申请新空间给p2干什么呢,不符合逻辑,并不是一个指针要对应一个新的申请空间。
问题2:head指针只记录第一次申请结构体空间的位置,没必要多次出现把后面分配的空间地址赋值给它。
问题3:在问题1解答中已经解释p2的作用,就是记录上一结点结构体的指针,比如现在分配了新的结点空间,要让上一结点与当前结点链接在一起,必须知道上一结点的位置,这个p2就是上一结点的指针,p2->next=p1;这句就完成了上一结点和当前结点链在一起。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询