链表的指针

LubinLew 2011-08-08 01:06:54

struct Node *create(int n)
{
int i = 0;
struct Node *head = NULL, *p;
for (i = 0; i < n; i++ )
{
p = (struct Node *)malloc( sizeof(struct Node) );
if ( p )
{
printf("Input the dat of the %d Node : ", i+1);
scanf("%d", &p->dat);
p->next = head;
head = p;//////////////////////指针不是地址吗,相等怎么理解?
}
else
{
printf("Memory is not enough for malloc.\n");
break;
}
}
return head;
}

...全文
58 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
至善者善之敌 2011-08-08
  • 打赏
  • 举报
回复
head = p;//////////////////////指针不是地址吗,相等怎么理解?
无非是把P的地址传递给HEAD,有什么问题呢?

hua_yang 2011-08-08
  • 打赏
  • 举报
回复
head = p;//////////////////////指针不是地址吗,相等怎么理解?

这里是赋值,不是相等
表示让head也指向p所指向的位置
在路上吗 2011-08-08
  • 打赏
  • 举报
回复
这里next,head和p都是一个变量,不过他们里面存储的数据是一个地址值
head = p;
意思就是让head里存储的地址值变成和p一样啊
無_1024 2011-08-08
  • 打赏
  • 举报
回复
指向同一块地址啊
返回局部对象啊 注意啊
bdmh 2011-08-08
  • 打赏
  • 举报
回复
指向同一个地址

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧