关于c++指针的初级问题

第七题有点懵,第八题我希望可以帮我解释一下链表插入的介绍

x是数组,含有两个st元素,p是指针指向了x的首地址,即p和x等效,p和x都直接指着第一个元素,即99和m1。
箭头是最高级,代表直接访问对应元素,如果是(++p),表示代表下移动一个st元素,指向第二个,直接理解第四个选项就是
t=(++p),指向100,m2
t->b代表访问m2,m2是数组,直接输出就是一个首地址,如果要输出100,就要加括号并加*号,如第一个选项。追问

大佬,你的回答很棒,特别易懂,感谢。那请问第八题链表你能不能帮我解释一下呀

我可以提高悬赏

追答

B选项,head指向了新节点,新节点的next再指向head,不就是指向了新节点自己吗?
总而言之head=q之前,head和p等价,之后head和q等价,再分析看看

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-12-26
*(++p->b); 向X0,++之后指向x1,x1指向m2的第一个数的指针,所以*之后为100.
而(++p)->b,可以想像出来,最终得到的是x1的b,是而,x1.b是一个地址,而不是值。所以,不可能是100。
关于第8题:
所谓的插到节点前面,就是next指向结点。
而答案B则是:head指向新节点q,head的值就是新节点了,这里,新节点又指向next,则相当于又指向了自己。追问

是不是指向那个指针就是插在哪个指针前呀

第2个回答  2018-12-25
将x32\System32中的内容复制到系统C:\Windows\System32文件夹中;