在C++中已经定义的如:int *p 为整型指针了,为什么在程序中有是有*p,有时用p,各指的是什么?

来源:百度知道 编辑:UC知道 时间:2024/05/30 15:08:18

假设如下:
int a = 2; //假设a的地址为0x1010
int *p = &a;
那么
p是0x1010,为a的地址
*p 的值即内存地址为0x1010处存放的值,为2

*p指指针所指向的内容
而p则指指针本身

注意*是一个重载的运算符,在不同的地方有不同的意义,如果是在声明指针变量的时候,*就表示后面的量(本题中的p)是一个指针型变量。而在其他时候则是间接取值,即*p就表示p所指向的内存中的存储的值。