Mr.HO 发表于 2018-2-20 00:28:49

结构体常的引用

本帖最后由 Mr.HO 于 2018-2-20 12:28 编辑

#include <iostream>


using namespace std;


struct Teacher
{
        char name;
        int age;


};


int GetTeacher(Teacher **pt)
{

        Teacher *temp=NULL;
    if (pt==NULL)
    {
                return -1;
    }
        temp=(Teacher *)malloc(sizeof(Teacher));
        if (temp==NULL)
        {
                return -2;
        }
        temp->age=33;
        *pt=temp;



}



void FreeTeacher(Teacher *Pt1)
{

        if (Pt1==NULL)
        {
                return;
        }
        free(Pt1);

}


int GetTeacher2(Teacher * &pp)
{
        pp=(Teacher *)malloc(sizeof(Teacher));
        if (pp=NULL)
        {
                return -1;
        }
        pp->age=36;    ///////////////////////////////////////////////////我执行到这里报错了,是为什么,没发现错在哪里了?


}

void main(void)
{
        Teacher * Pt1=NULL;


        GetTeacher(&Pt1);
        cout<<"pt1.age="<<Pt1->age<<endl;

        FreeTeacher(Pt1);

        GetTeacher2(Pt1);
        cout<<"pt1.age="<<Pt1->age<<endl;

        FreeTeacher(Pt1);

        system("pause");
}

人造人 发表于 2018-2-20 11:15:13




可以看到申请成功了





现在又没了,为什么?



仔细一看
哦,原来如此

Mr.HO 发表于 2018-2-20 12:26:03

人造人 发表于 2018-2-20 11:15
可以看到申请成功了




谢谢,还是不仔细的结果,谢谢了

Mr.HO 发表于 2018-2-20 12:28:02

看来我还是太浮躁{:10_266:}{:10_266:}{:10_266:}{:10_266:}{:10_266:}

人造人 发表于 2018-2-20 13:37:32

Mr.HO 发表于 2018-2-20 12:28
看来我还是太浮躁

^_^
页: [1]
查看完整版本: 结构体常的引用