用new和delete运算符进行动态分配和撤销存储空间

来源:互联网 发布:java数据存储方式 编辑:程序博客网 时间:2024/04/30 11:56

测试描述:临时开辟一个存储空间以存放一个结构体数据

#include <iostream>#include <string>using namespace std;struct Student{    string name;    int age;    char sex;};int main(){    Student *p;  //定义指向结构体类型Student的数据的指针变量p    p=new Student;  //用new运算符开辟一个存放Student型数据的空间,把地址赋给p    p->name="jrz1900";    p->age=20;    p->sex='M';    cout<<p->name<<endl<<p->age<<endl<<p->sex<<endl;    delete p;    return 0;}
结果显示:



new运算符使用的一般格式为:

new  类型 [初值]

注意:用new运算符分配数组空间时不能指定初值。如果由于内存不足等原因而无法正常分配空间,则new会返回一个空指针NULL,用户可以根据指针的值判断分配空间是否成功。


delete 运算符使用的一般格式为:

delete  指针变量  (对变量)

delete  [ ] 指针变量  (对指针数组)

delete [ ] pt  (对数组空间的操作)

C语言中利用库函数malloc和free来分配和撤销内存空间的。

1 0
原创粉丝点击