悬垂指针

指向曾经存在的对象,但该对象已经不再存在了,此类指针称为悬垂指针。结果未定义,往往导致程序错误,而且难以检测。

#include<iostream>
#include <windows.h>
using namespace std;
int *p=NULL;
void fun()
{
int i=10;
p=&i;
}
void main()
{
fun();
cout<<"*p= "<<*p<<endl;
Sleep(1000);
cout<<“一秒钟后,fun()中的i变量的存储空间被释放,p所指对象的值为:"<<endl<<"*p= "<<*p<<endl;
}
输出为:
*p= 10
一秒钟后,fun()中的i变量的存储空间被释放,p所指对象的值为:
*p= 1245056
Press any key to continue
可见,fun()运行完一秒钟后,p成为悬垂指针。
posted @ 2016-06-27 15:26  秋水小战士  阅读(228)  评论(0编辑  收藏  举报