2

是否有足够聪明的软件来确定您从某个地方获得了一个指针,并且返回的指针可能是 NULL 并且您在块中的任何位置都没有:

ptr = getSomeDataThatCouldReturnNULLAt(-1);

...

if(ptr)
{
   //code
}

或者

if(!ptr)
{
   return;
}

有没有软件可以让你知道所有可能不检查的地方?

谢谢

检查运行时问题。

4

1 回答 1

-1

更好的编码方法如下:

s32 getSomeDataThatCouldReturnNULLAt( s32 intParam, void **inputPointer);

然后在您要调用此函数的函数中:

s32 returnValue = 0 ;
void * ptr = NULL ; 

if((returnValue = getSomeDataThatCouldReturnNULLAt( -1, &ptr) ) != ERROR ||
  ptr ==NULL )
   return returnValue;  

returnValue可以指出您的错误getSomeDataThatCouldReturnNULLAt

于 2012-06-26T01:50:07.247 回答