标题:[求助]指针,数组与链表的问题!
只看楼主
lucis009
Rank: 1
等 级:新手上路
帖 子:181
专家分:0
注 册:2007-5-2
 问题点数:0 回复次数:4 
[求助]指针,数组与链表的问题!
链表:head->12->16->315->426->920->NULL
#include<stdio.h>
#include<stdlib.h>
.....
.....
int main()
{
int m[7];
int *p=m,i=0;
.....
......
while(h)/*h是链表头指针的返回值*/
{
*(p+i)=h->num;/*num是链表的成员,这里把*(p+i)换成m[i]就能正常运行*/
i++;
h=h->next;

}
}

是什么原因?
搜索更多相关主题的帖子: 链表 指针 int include 
2007-06-14 16:07
百年不亮
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:789
专家分:0
注 册:2006-4-14
得分:0 
检查一下在while循环之前有没有改变i的值.

这种问题你DEBUG一下监控相关变量的值,不就能找出问题吗?
2007-06-14 22:49
lucis009
Rank: 1
等 级:新手上路
帖 子:181
专家分:0
注 册:2007-5-2
得分:0 
但是我觉得就用指针以数组的形式输出就有问题,而直接用数组输出就没有问题

2007-06-15 00:28
twsgl
Rank: 1
等 级:新手上路
帖 子:136
专家分:5
注 册:2007-6-15
得分:0 
" *(p+i)=h->num;/*num是链表的成员,这里把*(p+i)换成m[i]就能正常运行*/"
这句话好好想想,*(p+1)是什么?m[i]是什么?
2007-06-15 16:44
lucis009
Rank: 1
等 级:新手上路
帖 子:181
专家分:0
注 册:2007-5-2
得分:0 
*(p+i)指针的数据,当作数组用,有什么问题吗?
2007-06-15 20:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-147464-1-1.html




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

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