c++第二天学习记录
实现内容:指针引用和二级指针
#include "iostream"
#include "stdio.h"
#include "stdlib.h"
using namespace std;
//指针引用与c的二级指针
struct TEACHER
{
char name[10];
int age;
};
int getteacher1(TEACHER **p)
{ TEACHER *tmp=NULL;
tmp=(TEACHER *)malloc(sizeof(TEACHER));
tmp->age=10;
*p = tmp; //只有利用二级指针使得过来的是指针的地址才能进行指针的交换
//意思就是地址过来,只能交换地址指向的内容而不能交换地址::::
return 0;
}
//c++指针引用,使得过来的是指针的应用,也就实现了直接交换地址,不需要二级指针了
int getteacher2(TEACHER *&p)
{
TEACHER *tmp=NULL;
tmp=(TEACHER *)malloc(sizeof(TEACHER));
tmp->age=20;
p=tmp;
return 0;
}
int main()
{
TEACHER *p1=NULL;
TEACHER *p2=NULL;
getteacher1(&p1);
getteacher2(p2);
cout<<p1->age<<endl;
cout<<p2->age<<endl;
system("pause");
return 0;
}