¿como cargo los datos de un archivo.dat en una estructura?

ernesto
27 de Agosto del 2004
hola nececito saber como cargar los datos de un archivo.dat en una estructura de este tipo, me han dicho que utilice las funciones fread y fwrite pero no se como llamarlas o utilizarlas estas son mis estructuras
typedef struct tpersona{
char nombre[20];
char apellido[20];
char direccion[30];
char fono[10];
struct tpersona *next;
};

typedef struct tagenda{
char letra;
struct tagenda *next;
struct tpersona *head;
};
ya hice lo del fopen mi problema es cargar los tado en mi lista. y quisiera saber como despues de hacer modificaciones guardo todo nuevamente

Deimos
27 de Agosto del 2004
Mira creo que lo que necesitas hacer es algo así:

tpersona r;

fread(&r, sizeof(tpersona),1,archivo); //Lee el primero
while (feof(archivo)) == 0) //Si el archivo no se termino
{
cout<<"nNombre: "<<r.nombre; //muestro la var.
cout<<"nApellido: "<<r.apellido;
//...etc
fread(&r, sizeof(tpersona),1,archivo);
}

eso leería todo el fichero hasta que se termine...y lo que encuentre lo guarda en r para que lo muestres... puedes hacer de r un vector(r[20]) para guardar todos los registro y no solo mostrarlos.

Espero haberte ayudado!!!