搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 求大神指教,这段代码什么意思?
标题:
求大神指教,这段代码什么意思?
只看楼主
对影成三人
等 级:
新手上路
帖 子:5
专家分:0
注 册:2015-2-5
结帖率:
100%
楼主
已结贴
√
问题点数:20 回复次数:4
求大神指教,这段代码什么意思?
while(i<N)
{
q=(*STREC)malloc(sizeof(STREC));
q->s=s[i];i++;p->next=q;p=q;
}
2015-03-19 18:30
longwu9t
等 级:
小飞侠
威 望:
6
帖 子:732
专家分:2468
注 册:2014-10-9
第
2
楼
得分:10
while(i<N)这个不用解释了
这里假设q为链表创建时开辟的新节点
而p为当前链表的头节点
那么这个while循环就是在不断的开辟新节点
并对节点中的元素s赋值
然后把新节点向链表的头部不断的插入
直到while循环结束
头节点被更新为最后一个开辟的新节点
Only the Code Tells the Truth K.I.S.S
2015-03-19 18:50
对影成三人
等 级:
新手上路
帖 子:5
专家分:0
注 册:2015-2-5
第
3
楼
得分:0
回复 2楼 longwu9t
那么p->next=q;p=q;代表什么呢?既把q赋值给p->next,又p赋值给p
2015-03-19 19:01
longwu9t
等 级:
小飞侠
威 望:
6
帖 子:732
专家分:2468
注 册:2014-10-9
第
4
楼
得分:10
以上代码是“头插”
是把头节点作为最后插入的节点
p->next=q;p=q;
就是把旧的头节点更新为新开辟的节点
p、q、next都是指针
你要是实在不理解也没关系
死记下来就行了
你看一下
https://bbs.bccn.net/thread-442485-1-1.html
我在8楼有类似的代码
运行一下你就明白了
Only the Code Tells the Truth K.I.S.S
2015-03-19 19:07
对影成三人
等 级:
新手上路
帖 子:5
专家分:0
注 册:2015-2-5
第
5
楼
得分:0
回复 4楼 longwu9t
好的,谢谢您这么耐心地解答
2015-03-19 19:25
5
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-442826-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.062236 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved