Personal I have this remove function at the beginning, it happens that when I enter numbers such as: 1 2 3, and then I call the remove function at the beginning and delete the number 2, while the correct was to delete the number 1 , because it is the beginning of the list. Have tried everything here, to my limit and I could not.
int retira_no_inicio (tipo_lista *p)
{
tipo_lista * aux;
//tipo_lista * ant;
if (p -> prox == NULL)
{
return NULL;
}
aux = p -> prox;
p -> prox = aux -> prox;
return p;
}