两个指针变量*p,*q(p指向a,q指向b),p=q与p=*q有什么区别?
2个回答
推荐于2016-09-15
展开全部
假如a的地址是x0001,对应的值是123, b的地址是x000f,对应的值是789,
那么p的值就是a的地址x0001,q的值就是b的地址x000f
p=q就是把q的值赋给p,这时p的值是x000f
p=*q是把地址q对应的值赋给p,即x000f对应的值789,这时p的值是789,这个值如果被当作一个内存地址的话,我们是不知道它是什么的,这样的操作是很危险的。
那么p的值就是a的地址x0001,q的值就是b的地址x000f
p=q就是把q的值赋给p,这时p的值是x000f
p=*q是把地址q对应的值赋给p,即x000f对应的值789,这时p的值是789,这个值如果被当作一个内存地址的话,我们是不知道它是什么的,这样的操作是很危险的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询