c语言next函数定义,c语言的数据结构中,next是如何指向下一个元素的?

匿名用户

1级

2013-04-27 回答

楼上的哥们好像回答的方向偏了

指针的声明

指向类型 *p;

这个*就标志这这是一个指针,声明之后,变量p在调用的时候就不是调的指针本体了,而是指针所指的目标!

例如:p->next

这不是指针p的next,而是指针p所指向的目标中的next

结构体作为自定义的数据结构,创建后系统只能返回整个结构体的首地址,所以只能用一个指针来接,结构体中指针变量命名为next只是国际惯例,你就算改成*n也一样,只是以后用的时候:

p->next 改成 p->n 就可以了

指针赋值常用的有两种:

1、把目标的地址取来赋给指针

p = & target //&就是取地址符

2、把另一个指针所指向的目标的地址赋给指针

p = q;

追问:

这个P->next为什么表示指向下一个呢?如果用线性表可以用++i什么的来指向下一个,可是这个没有类似的啊!而且双向链表中,定义改变了一下,

typedef struct DuLNode //定义结构体

{

ElemType data;

struct DuLNode *prior;

struct DuLNode *next;

}DuLNode,*DuLinkList;

然后p->prior就表求指向p的前一个元素,这是怎么

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值