struct _cel { int valor; struct _cel *prox; }; typedef struct _cel celula; void inverte_lista(celula *cabeca) { celula *a, *b, *c; a = NULL; b = cabeca->prox; while (b != NULL) { c = b->prox; b->prox = a; a = b; b = c; } cabeca->prox = a; }