我正在尝试实现如下所示的函数 set_it_free,但它只会在本地使用指针,这不会做我想要的,即 free 并将指针设置为 null。你能帮我修改我的 set_it_free 以使其工作吗?
int set_it_free(void* pointer, unsigned long level, char* message){
logMessage(level, message);
assert (pointer != NULL); //Never free a NULL pointer
free (pointer); //Free a malloc/calloc/realloc pointer
pointer = NULL; //Set it to NULL for prevention
return 0;}
我会在 main() 中这样称呼它
int* a = (int* )malloc(sizeof(int));
set_it_free(a);