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


    測试描写叙述:暂时开辟一个存储空间以存放一个结构体数据

    #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来分配和撤销内存空间的。

  • 相关阅读:
    bzoj1001 狼抓兔子
    bzoj1015 星球大战
    noip模拟赛 楼
    noip模拟赛 radius
    noip模拟赛 helloworld
    noip模拟赛 hungary
    noip模拟赛 gcd
    洛谷P3375【模板】KMP字符串匹配
    noip模拟赛 隔壁
    noip模拟赛 对刚
  • 原文地址:https://www.cnblogs.com/zhchoutai/p/6789742.html
Copyright © 2020-2023  润新知