#include
usingnamespacestd;
intmain()
{
int*a=newint(5);
int*p=a;
cout<<"5这个整型存储的地址是"<
cout<<"指针变量a指向的数值是"<<*a<
cout<<"指针变量a的值是"<
delete a;
cout<<"已经删除了指针变量"<
cout<<"现在p存储的地址是"<
cout<<"现在a存储的地址是"<
cout<<"现在p指向的整型是"<<*p<
cout<<"现在我重新给指针p指向的值赋值为 6"<
*p= 6;
cout<<"再次输出得到的值为"<
cout<<*p<
//其实就是这个地址的内存已经被释放了,已经不是原先的那个东西了。指针变量的值
//自始至终都没有变过,但是最后指针变量指向的值已经改变了
return0;
}
输出的截图是
5这个整型存储的地址是00C46518
指针变量a指向的数值是5
指针变量a的值是00C46518
已经删除了指针变量
现在p存储的地址是00C46518
现在a存储的地址是00C46518
现在p指向的整型是-572662307
现在我重新给指针p指向的值赋值为 6
再次输出得到的值为
6
说明了这是这个指针不指向这段内存了,这个内存地址依然是存在了,但是是可以再用的。
网友评论