Bla*_*iev 11
*array == NULL是错的.您首先取消引用指针(如果指针确实为null,则可能导致段错误),然后将其int值与指针值进行比较.而且,如果NULL定义为just 0和not ,那么你的编译器将完全接受错误的表达式(void *) 0.
您应该检查array == NULL传递的指针是否引用任何内容,然后仅在不是的情况下取消引用它NULL.
但请注意,取消引用非空指针也不能保证是安全的操作.如果指针包含垃圾值,因为它是在堆栈上分配而未初始化,或者如果它指的是内存的释放区域,则会发生令人讨厌的错误.
你想if (array == NULL)-但除非你先初始化array到NULL,它不会做任何不太妙.我认为你最好还是备份并告诉我们更多关于你想要完成的事情,并试图获得帮助以实现你的总体目标.