p=q->next和q->next=p是否有区别?

cctvvbboys 2001-04-17 11:40:00
p=q->next和q->next=p是否有区别?
...全文
41244 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lonelybug 2001-04-20
  • 打赏
  • 举报
回复 1
很简单呀,就是说p=q->next是把q这个结构指针的成员next的值传递给p变量,后边的q->next=p时说把p变量的值传递给q结构指针的next的成员!明白了吗!?
liujyniu405 2001-04-20
  • 打赏
  • 举报
回复
当然不一样,p=q->next是把q的下一个值给了P,而q->next=p正好相反。
就像你给我分和我给你分一样的值。
Kimsh 2001-04-19
  • 打赏
  • 举报
回复
举个例子说吧,一个字符串 asdfgh, p和q为两个指针, 假设p指向的是d,q指向的是f,那么,q->next应是g,p=q->next就是将p指向g,而q->next=p是说将原来的g转换为d.
就是这样.不止你明白了没有
blre 2001-04-18
  • 打赏
  • 举报
回复
我的天哪
rh 2001-04-18
  • 打赏
  • 举报
回复
哦!名称不符合!
结构是:
struct aaa{
int aa;
struct aaa *next;//这里是next:)
};
rh 2001-04-18
  • 打赏
  • 举报
回复
假设结构指针为:
struct aaa{
int aa;
struct aaa* bb;
}*p,*q;
若有p = 1000;q = 1100;q->next = 1110; //为了说明方便,这里随意赋予指针地址值
那么:
p = q->next; //这里是把q->next指针的值赋予p,即让p指向q->next指向的地址。运算后,p = q->next = 1110;

q->next = p; //这里把p赋予q->next,即把q->next指向p指向的地址。运算后,q->next = p = 1000;
自然不一样!

btw,题目应该放在c/c++里,这与数据算法无关:)

33,010

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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