#include <iostream>
using namespace std;
int main( void )
{
int a = 2002;
int *p = &a;
int *pp = &a;
cout << (p == pp) << endl;
cout << (&p == &pp) << endl;
system( "PAUSE" );
return EXIT_SUCCESS;
}
/*-------------
1
0
请按任意键继续. . .
从运行结果看:
p 与 pp是相等的
&p 与 &&pp不相等
这说明指针中的取址是取指针的地址而不是取指针所指变量的地址
如果是取变量的地址,那么指针p指向变量a,所取的地址是a的地址
同理,指针pp指向变量a,所取地址也是a的地址,a的地址,无论谁去取都应该相同,而事实上不同.
这里我们看到不同是指针地址的不同,因为是两个不同的指针变量。
-------------------------*/取址运行符是取指针的地址而不是取指针所指变量的地址
最新推荐文章于 2025-07-08 15:33:44 发布
本文通过一个C++示例程序详细解析了指针及其地址的概念。演示了两个指针变量即使都指向同一个变量,它们自身的地址也是不同的。这对理解内存管理和指针操作至关重要。
2556

被折叠的 条评论
为什么被折叠?



