C++ 指针引用

Posted 庖丁解牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 指针引用相关的知识,希望对你有一定的参考价值。

//指针引用
#include<iostream>

using namespace std;

struct Teacher{
    char name[30];
    int age;
};

int InitA(Teacher **pout/*out*/){
    int ERRO_MSG = 0;
    if (pout==NULL)
    {
        ERRO_MSG = 1;
        printf("pout==NULL erro msg:%d\n", ERRO_MSG);
        return ERRO_MSG;
    }
    Teacher* ptemp = (Teacher*)malloc(sizeof(Teacher));
    if (ptemp == NULL)
    {
        ERRO_MSG = 2;
        printf("内存分配失败! erro msg:%d\n", ERRO_MSG);
        return ERRO_MSG;
    }
    ptemp->age = 22;
    *pout = ptemp;
    return ERRO_MSG;
}

//指针引用
int InitB(Teacher* &pout){
    int ERRO_MSG = 0;
    pout = (Teacher*)malloc(sizeof(Teacher));
    if (pout == NULL)
    {
        ERRO_MSG = 2;
        printf("内存分配失败! erro msg:%d\n", ERRO_MSG);
        return ERRO_MSG;
    }
    pout->age = 33;
    return ERRO_MSG;
}

void main(){
    Teacher *p = NULL;
    int ret = 0;
    //ret=InitA(&p);
    //if (ret!=0)
    //{
    //    printf("初始化Teacher失败!\n");
    //}
    //printf("教师A的年龄是%d\n",p->age);
    ret = InitB(p);
    if (ret != 0)
    {
        printf("初始化Teacher失败!\n");
    }
    printf("教师B的年龄是%d\n", p->age);
    system("pause");
}

 

以上是关于C++ 指针引用的主要内容,如果未能解决你的问题,请参考以下文章

指针与引用 C++

C++二级指针和指针引用

指向 C++ 中的引用的指针

C++笔记--指针和引用

C++ 指针取消引用赋值

使用 Kotlin 在片段中引用 RecyclerView 时出现空指针错误