防止解引用空指针(NULL pointer)

什么是解引用空指针?

C语言中,如果一个指针变量的值为NULL,解引用这个指针时,会导致程序崩溃(Segmentation fault)。

如何防止解引用空指针?

基本思路是在解引用指针前,先判断是否为NULL,如果是NULL则不要解引用。但是C语言程序中,指针的使用非常多,在每次解引用之前都做判断是非常低效、不可行的。通常只在解引用没有把握的指针前,先做判断。比如其它模块传入的函数参数、函数返回值,特别的要注意判断malloc()、calloc()的返回值,防止在内存分配失败时,仍然解引用指针。

猜你喜欢

转载自blog.csdn.net/jxzdsw/article/details/81170149