文章目录
萌新的学习笔记,写错了恳请斧正。
C语言中的动态内存管理
C语言中,我们使用malloc
、calloc
、realloc
、free
来动态管理内存。
int main()
{
int* p = (int*)malloc(sizeof(int)); //动态开辟
free(p);
int* q = (int*)calloc(4, sizeof(int)); //动态开辟并赋值
int* r = (int*)realloc(q, 10 * sizeof(int)); //重新分配空间
free(r);
}
C++中的动态内存管理
C++中有更简单方便的内存管理方式,那就是使用new
、delete
来管理内存。
使用new/delete操作内置类型
注意:如果使用new开辟空间就用delete删除,如果使用new[]开辟数组就用delete[]删除。
-
动态申请与删除一个内置类型变量的空间:
int* pi = new int; int* pf = new float; int* pl = new long; int* pb = new bool; delete pi; delete pf; delete pl; delete pb;
-
动态申请与删除一个内置类型变量的空间并完成初始化:
int* pi = new int(114514); int* pf = new float(3.14f); int* pl = new long(1145141919810); int* pb = new bool(true); delete pi; delete pf; delete pl; delete pb;
-
动态申请与删除内置类型变量数组的空间:
int* pi = new int[5]; int* pf = new float[5]; int* pl = new long[5]; int* pb = new bool[5]; delete[] pi; delete