There is a dynamic array of pointers
char ** pointer = (char **) calloc(count,sizeof(char*)); on the lines. It is necessary to remove elements from it, i.e. actually release the memory pointed to by this pointer, and then assign the pointer to NULL
The problem is that after, when outputting data, it displays "left" data, although in theory the address of this pointer should be 0x0 , when debugging, the pointer points to another address, not 0х0
void delete_elem(char ** p){ char ** p_str = p; free(*p_str); p=NULL; }
p=NULL;meaningless, this is a local variable. - pavelNULLwill make sense? - Hardc0reNULL- Hardc0re