Ver Mensaje Individual
  #3 (permalink)  
Antiguo 09/03/2004, 12:00
rafapaskual
 
Fecha de Ingreso: septiembre-2003
Mensajes: 172
Antigüedad: 20 años, 8 meses
Puntos: 0
Hola,

fwrite y fread escriben y leen bloques de memoria de un archivo. La sintaxi es la misma para las dos:
fread(apuntador a variable, tamaño de la variable, cantidad de valores, apuntador a fichero)

Apuntador a variable se refiere a un apuntador a la variable que va a guardar, o de la que se va a extraer, los datos.
Tamaño de la variable se usa normalmente con sizeof (tipo), por ejemplo si lees una serie de enteros seria sizeof(int).
Cantidad de valores, pongamos que quieres guardar 4 enteros, este campo seria un 4.
Apuntador a fichero es el apuntador que tengas abierto al fichero.
Ej:
para leer 1 entero:
int var;
FILE * archivo;
if (archivo=fopen("ruta","r"))
{fread(&var,sizeof(int),1,archivo);}

Si quisieramos leer 20 enteros
int vect[20];
FILE * archivo;
if (archivo=fopen("ruta","r"))
{fread(vect,sizeof(int),20,archivo);}

Así es como lo pone en la ayuda del Visual C++, yo lo que hacia es forzar siempre la cantidad de datos a 1 y variar el tamaño segun la cantidad de datos que quisiera, pe fread(vect,sizeof(int)*20,1,archivo), pero supongo que la manera correcta es la que te he explicado antes.

Espero que haberte podido ayudar. Saludos!
__________________
Sr.Propio