多语言展示
当前在线:1483今日阅读:113今日分享:31

*p=&a,*p=a和p=&a各是什么意思,有什么区别

表达式的意思:1、*p=a的意思:将a的值赋给p指针指向的地址的值;2、p=&a的意思是:将a的地址赋给指针p;3、*p=&a的用法错误。区别在于:p=&a就是用a的地址对p赋值,a是一个变量,&a就是存储这个变量的内存地址,指针存储的就是一个地址,*p就是这一地址中的内容。扩展资料另类*和&两个地方要注意: 在程序声明变量的时候的*,只是表明“它是一个无符号整数,这个整数指向某个内存地址,一次访问sizeof(type)长度”。这点不要和(*)操作符混淆;在C++程序声明变量的时候的&,只是表明“它是一个引用,这个引用声明时不开辟新空间,它在内存分配表加入新的一行,该行内存地址等于和调用时传入的对应参数内存地址”。这点不要和(*)声明符,(&)操作符混淆。参考资料来源::指针
推荐信息