Togli quei char* iniziali nelle seconde due righe, ché non li stai inizializzando...

codice:
ptr1 = (char*)trim(ptr);
Ci sarebbe anche utile sapere il contenuto della funzione trim.