#include<iostream>
using namespace std;
struct student
{
string name;
int num;
int sex;
};
int main() {
student* p,*q,stu;
p = new student{ "dema",104323,1 };//用new新开辟了一个存放student型数据的空间,把地址给了p;
/*p->name = "dema";
p->num = 1043320140;
p->sex = 1;*/
cout << p->name << p->num << p->sex << endl;
delete p;
stu.name = "demaxiya";
stu.num = 45455;
stu.sex = 1;
cout << stu.name << stu.num << stu.sex << endl;
q = &stu;
cout << q->name << q->num << q->sex << endl;
cout << ( * q).name << (*q).num << (*q) .sex << endl;
//指向stu的指针q 的几种输出方式;
return 0;
}
结果:
dema1043231
demaxiya454551
demaxiya454551
demaxiya454551
补充:new delete是运算符 不是函数;与c语言的malloc和free 相似但比其效率更高;