数据结构p->next 含义问题
问题描述:
数据结构p->next 含义问题
p是个指针,p->next表示p指针所指向结点的指针域.我想问为什么不是 *p->next 来表示呢 ?p只是个指针(地址)啊, 既然结点的指针域,结点为什么不是*p 而是p来表示.
答
指针就是地址.地址是房子门牌号,房子里面有人(数据). p->next 就是一个地址(由p地址来确定) 那么地址(p->next)加*即加索引就是这个房子(地址)里的元素(人,数据).节点就是地址.不知道你明白了不.继续看看,主要是上机,把疑问调试一步一步断电调试,看寄存器值额那p->next不就是访问结点这结构体中的指针域吗,所以 -.>的左边应该是个结构体啊,怎么可以是地址你把结构体和指针混了,结构体用.,指针用->你要明白指针的重点是什么,在所有32bit机器上,指针就是地址就是一个32bit数,64bit同理,而重要的是指针指向的是哪,比如指向一个node结构,那么指针加一,就是加一个node的大小,指向别的也是同理,指针难点是指那,具体为啥指针步进是指向元素大小有编译器设计的。你把结构体和指针混了,结构体用.,指针用->你要明白指针的重点是什么,在所有32bit机器上,指针就是地址就是一个32bit数,64bit同理,而重要的是指针指向的是哪,比如指向一个node结构,那么指针加一,就是加一个node的大小,指向别的也是同理,指针难点是指那,具体为啥指针步进是指向元素大小有编译器设计的。