📄 13-4.txt
字号:
/* 范例:13-4 */
#include <iostream.h>
void main(void)
{
int z=3;
int *a=new int(5); /* 动态配置一个整数的内存空间,初值5 */
int *arr1=new int[10]; /* 动态配置一个空间为10的整数数组 */
int *arr2=new int[z]; /* 动态配置数组时,第一维可以使用常数或 变量来表
示其数目,之后的维数则只能使用常数 */
int (*arr3)[5]=new int[z][5];
cout <<"delete a前" <<endl;
cout <<"&z:" <<&z <<endl;
cout <<"&a:" <<&a <<endl; /* 获得指针变量a本身的地址 */
cout <<" a:" <<a <<endl; /* 获得a指向的内存空间地址 */
cout <<"*a:" <<*a <<endl; /* 获得动态配置的内存空间内容值 */
delete a; /* 释放掉由动态配置内存的空间*/
cout <<"delete a后" <<endl;
cout <<" a:" <<a <<endl; /* 使用delete运算符后,并不会将指针变量a所
指向的地址值清除 */
cout <<"*a:" <<*a <<endl; /* 获得“已被释放”的内存空间内容值(因为已
被释放,因此,结果不可预期!) */
/* 释放掉由动态配置内存的数组 */
delete []arr1;
delete []arr2;
delete []arr3;
getchar();
}
程序执行结果:
delete a前
&z:0065FE00
&a:0065FDFC
a:00682EEC
*a:5
delete a后
a:00682EEC
*a:6827892
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -