Non hai capito ... non c'è un ciclo in più ... la i++ è eseguita prima del controllo quindi viene comunque eseguita prima che termini il ciclo.
Prova ad invertire le due righe
codice:i++; while(!feof(cfPtr)){
in questo modo
codice:while (!feof(cfPtr)) { i++;
ed elimina la i++ che sta alla fine del ciclo.