[C con Clase] Pasar datos de un archivo a un vector

Pablo Brunet cirujatuc79 en gmail.com
Vie Mar 20 11:17:13 CET 2009


evidentemente no me queda claro el funcionamiento del fread y el de
sus parámetros, que significa exactamente sus parametros?.

El 20 de marzo de 2009 3:16, Steven Davidson <srd4121 en njit.edu> escribió:

> Hola Pablo,
>
> Pablo Brunet wrote:
>
>> no amigo, el archivo que estoy abriendo fue generado con este
>> algoritmo y si es un binario:
>>
>>
> Analizando este código fuente junto con el otro que enviaste en otros
> correos-e, he encontrado el problema. Escribes lo siguiente:
>
> int main()
> {
>  m = fopen( "pablo.txt"," rb" );
>  fseek( m, 0, 0 );
>  fread( &v, sizeof(v), 1, m );
>  ...
> }
>
> Tienes el problema en la primera lectura. Indicas que cada elemento a leer
> ocupa 'sizeof(v)' que en tu caso es '100*sizeof(p)' que puede ser 6000
> bytes. Como no hay tantos bytes en el fichero, llegamos al final del
> fichero, por lo que la condición del bucle 'while' es falsa.
>
> Lo que seguramente querías hacer es leer el primer registro. Esto vendría a
> ser lo siguiente:
>
> fread( v, sizeof(v[0]), 1, m );
>
> Además, escribiste que el primer parámetro es '&v', cuando realmente
> debería ser 'v'. Recuerda que un array es una dirección de memoria.
>
>
> Espero que esto te sirva.
>
>
> Steven
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20090320/60ae154c/attachment.html>


Más información sobre la lista de distribución Cconclase