王道408C++

C++ 指针型变量的引用型定义

2020-08-03  本文已影响0人  sakura579
#include <iostream>
using namespace std;

void getResult(int *&p)
{
    int a = 3;
    int *q = &a;
    cout<<"q="<<q<<endl;
    p =q;
}

int main(){ 
    int *p = NULL; 
    getResult(p);
    cout<<"result="<<p;
}

结果
q=0x6ffdc4
result=0x6ffdc4

#include <iostream>
using namespace std;

void getResult(int *p)
{
    int a = 3;
    int *q = &a;
    cout<<"q="<<q<<endl;
    p =q;
}

int main(){ 
    int *p = NULL; 
    getResult(p);
    cout<<"result="<<p;
}

结果
q=0x6ffdd4
result=0

c语言中 二级指针可以实现这种指针型变量的引用型

#include <iostream>
using namespace std;

void getResult(int **p)
{
    int a = 3;
    int *q = &a;
    cout<<"q="<<q<<endl;
    *p =q; // *p实际上是p的地址 赋予p的地址为q的地址
}

int main(){ 
    int *p = NULL; 
    getResult(&p); //&p 为指向p指针的指针变量的内容
    cout<<"result="<<p;
}

结果
q=0x6ffdc4
result=0x6ffdc4

上一篇 下一篇

猜你喜欢

热点阅读