Possible Duplicate:
Does free(ptr) where ptr is NULL corrupt memory?
我正在写一个C函数,如果指针是malloc()
ed,它会释放指针.指针可以为NULL(如果发生错误,代码没有机会分配任何内容),也可以为malloc()
.用free(ptr);
代替if (ptr != NULL) free(ptr);
安全吗?
gcc
一点也不抱怨,即使是-Wall -Wextra -ansi -pedantic
,但这是个好习惯吗?