C语言里,*(&a)==a,&(*p)==p的区别

来源:学生作业帮助网 编辑:作业帮 时间:2024/08/03 17:24:06
C语言里,*(&a)==a,&(*p)==p的区别
xI 0oS{ڍ'8J Rt!8H\:z¦qPw!{*qk.si9r7=5UG OsM'o\C8rĮaJ?y*4(m2Jl/."yX/d KE>E*AT9[bT~ʚF%> B

C语言里,*(&a)==a,&(*p)==p的区别
C语言里,*(&a)==a,&(*p)==p的区别

C语言里,*(&a)==a,&(*p)==p的区别
*(&a)==a,a首先是个变量值,先执行(&a)取得a变量的指针地址,再执行*(&a)取得a变量上的指针地址对应的值.所以这个表达式是两个变量值的比较.
&(*p)==p,p首先是个指针变量,先执行(*p)取得指针地址p对应的值,再执行&(*p)取得该值的地址.所以这个表达式是两个指针地址的比较