C/Visual C - ¿Porqué se repite la última linea?

 
Vista:
sin imagen de perfil

¿Porqué se repite la última linea?

Publicado por Tomas (12 intervenciones) el 22/05/2014 12:25:29
el codigo es:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void visualizar_puntos(){
struct t_punt puntos;
	FILE * f;
	f= fopen("puntos.bin","rb");
 
	printf("Los puntos guardados en memoria son:\n");
	do{
		if(feof(f)){
			fclose(f);
			return;
		}
		fread(puntos.id,sizeof(puntos.id),1,f);
		fread(&puntos.x,sizeof(puntos.x),1,f);
		fread(&puntos.y,sizeof(puntos.y),1,f);
		printf(" %s (%f, %f)\n",puntos.id,puntos.x, puntos.y);
 
}while (!feof(f));
	fclose(f);
}

y se repite el ultimo punto.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

¿Porqué se repite la última linea?

Publicado por Tomas (12 intervenciones) el 22/05/2014 13:47:43
Bueno, ya lo tengo..es así por si alguien le interesa:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void visualizar_puntos(){
struct t_punt puntos;
	FILE * f;
	f= fopen("puntos.bin","rb");
 
	printf("Los puntos guardados en memoria son:\n");
	do{
		fread(&puntos.id,sizeof(puntos.id),1,f);
		fread(&puntos.x,sizeof(puntos.x),1,f);
		fread(&puntos.y,sizeof(puntos.y),1,f);
		 if (!feof(f)){
		printf(" %s (%f, %f)\n",puntos.id,puntos.x, puntos.y);
	}
		}while(!feof(f));
fclose(f); return;
 
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar