int* func()//返回值是地址
{
int* p = new int(10);//局部变量,new的数据存在堆区,用指针p去接受new出来的地址;这个指针变量存放在栈区;
return p;//返回的是这个指针变量p指向的地址;
}
int main()
{
int* p1 = func();指针变量p1拿到func函数的返回地址,指针变量p销毁;
cout << *p1 << endl;刚刚在堆区new的数据的地址被p1拿到;
int a=10;
int *p2=a;
return 0;
}
*p2:是指针p2指向的具体值,就是通过地址解出值;
p2:是指针p2指向的地址;
但是这个指针变量p2的地址在哪?
c++指针函数调用
最新推荐文章于 2024-06-01 17:47:17 发布