| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 323 人关注过本帖
标题:求大神指教,这段代码什么意思?
只看楼主 加入收藏
对影成三人
Rank: 1
等 级:新手上路
帖 子: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
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:10 
while(i<N)这个不用解释了
这里假设q为链表创建时开辟的新节点
而p为当前链表的头节点
那么这个while循环就是在不断的开辟新节点
并对节点中的元素s赋值
然后把新节点向链表的头部不断的插入
直到while循环结束
头节点被更新为最后一个开辟的新节点

Only the Code Tells the Truth             K.I.S.S
2015-03-19 18:50
对影成三人
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-5
收藏
得分:0 
回复 2楼 longwu9t
那么p->next=q;p=q;代表什么呢?既把q赋值给p->next,又p赋值给p
2015-03-19 19:01
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分: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
对影成三人
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2015-2-5
收藏
得分:0 
回复 4楼 longwu9t
好的,谢谢您这么耐心地解答
2015-03-19 19:25
快速回复:求大神指教,这段代码什么意思?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039600 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved