指针的危险

来源:互联网 发布:linux我的世界启动器 编辑:程序博客网 时间:2024/05/16 01:33

指针是一种高效率的好东西,可以设计出高效率的程序,但是指针使用不当那就是高危险,会给整个系统带来灭顶之灾。整个系统分分钟奔溃!下面是我大概总结常见的指针高危的操作,甚至可以说是非法操作!

1、指针还没有指向就直接对其进行赋值操作!

例如:int* Temp;

*Temp = 10; 

对于初学者一开始不怎么留意的话很容易就会犯这种致命的错误。下面可以说是一个一直以为是对的程序,是关于交换两个值的一段代码:

void swap(int* p,int* q)

{

int* temp;

*temp = *p;//致命的错误,指针还没有明确的指向就对其进行赋值

*q = *temp;

}

2、第二种错误主要是指针用完回收,但是就是没有赋值为NULL。

如果没有赋值为NULL,而又是释放了内存的话,这个时候指针就是野指针,或者叫迷途指针。只要后面程序对其赋值就会导致系统奔溃的可能。

正确的做法就是用完释放的指针最好都要指向NULL,只要是指向了NULL那么后期对其赋值也没事,也就是对一个空指针赋值是安全的。因此,一开

始声明指针的时候最好要置为NULL的初始操作,指针释放之后也要置为NULL。可以保证系统安全!


总结:指针没用置NULL,释放一个空指针没什么问题,要是指针乱指向,释放的话是非常危险的事情,有可能造成整个系统奔溃!

0 0
原创粉丝点击