No ... scrivere tutto il codice no ...

Ma ti suggerisco di dichiarare il buffer cosi'

char buffer[200];

in modo che sia allocato lo spazio ...

Ovviamente questa riga dovra' essere scritta cosi'

fscanf(fp,"%s", buffer);

e poi dovrai fare le altre correzioni ...