new

new其实就是告诉计算机开辟一段新的空间,但是和一般的声明不同的是,new开辟的空间在堆上

格式

(1) 指针变量=new 类型;
(2) 指针变量=new 类型(初值参数);
(3) 指针变量=new 类型[数组元素数];

  1. int *p;
  2. p=new int; // 动态内存分配
  3. *p=3; // 第二、三行也可合并为:p=new int(3);
  4. float *p1;
  5. p1=new float[3]; // 为3个元素的float 数组申请动态内存
  6. p1[2]=20.9; // 访问数组的第3个元素

delete

格式

delete 操作符的格式为:
delete 指针变量; // 释放指针变量所指向的动态内存
delete []指针变量;/ 释放为数组分配的动态内存

例如:

delete p; delete []p1;