Ver Mensaje Individual
  #8 (permalink)  
Antiguo 24/05/2012, 01:28
Fw190
 
Fecha de Ingreso: junio-2010
Ubicación: Madrid
Mensajes: 620
Antigüedad: 13 años, 10 meses
Puntos: 73
Respuesta: Duda con leer archivo

Cuando lee la última fila, aún no ha leído la marca de final de archivo. Cuando intentas leer de nuevo, entonces es cuando lee la marca de fin de archivo, pero ya no hay datos, por lo que el resultado de esa lectura es (en principio) impredecible (aunque el comportamiento que he observado en varios compiladores, tanto en Windows como en Unix/Linux, es el de repetir la última lectura). El bucle de lectura debería ser, por ejemplo:

Código C:
Ver original
  1. while(!feof(fichero))
  2.      {
  3.         fscanf(fichero,"%d %d %d %d", &f, &c);
  4.         if ( feof(fichero) )
  5.               break;
  6.         printf("%dX  %dY\n", &f, &c);
  7.         Matriz[f][c] = 1;
  8.      }