Leo desde un archivo tres parametros que estan separado por ";" y los dejo en 3 variables hasta ahi todo ok..
iCtdCols = 3;
do{
iArchNotCred = fscanf(fileArchNotCred,"%[^;];%[^;];[^\n]\n", cCodTipDocumNC, cValTotalDR, cCodRecupIva);
if ((iArchNotCred == EOF) || (iArchNotCred == 0)) break;
else if (iArchNotCred != iCtdCols)
{
iError = 1;
break;
}
}while (iArchNotCred > 0);
Cuando el archivo es menor a 2MB no hay ningun problema.. pero si este sobrepasa los 2MB se cae

Saludos y gracias por vuestra ayuda...
Roberto.