鉴于:
int **a; // (double pointer)
int *b; // (pointer)
*a=b
和a=&b
之间有什么区别吗?
首先,*a = b;
将变量b
的值复制到a
指向的位置。
第二个,a = &b
将b
的地址复制到a
。
*a = b;
您将b
的值分配给a
指向的位置。
a = &b;
在这里,您将b
的地址分配给a
&
它是获取变量地址的运算符
*
是能够检索指针指向的值的运算符,间接,因为您应该调用此进程。
所以是的,这两个陈述是不同的。
*a = b
将b
分配给内存中a
指向的位置
a = &b
将b
的地址分配给变量a
。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(22条)