C/Visual C - Fread() loco...

 
Vista:

Fread() loco...

Publicado por chivotario (4 intervenciones) el 12/10/2002 02:15:58
Realice un programa que leia bloques de un fichero los encriptaba usando DES y los guardaba en un nuevo fichero.El caso es que compilado usando gcc funciona perfectamente, incluso compilado bajo windows con cygwin.He probado a compilar el mismo programa con borland c++ o visual c++ y el programa ya no funciona.El principal problema es que para leer los bloques usando la funcion fread() llegado un momento (aleatorio) deja de leer los bloques correctamente, y lo que hace es repetir siempre el ultimo bloque que habia leido bien.Probablemente sea algo relacionado con el modelo de memoria que usa el compilador del visual c++.No se si la solucion seria compilarlo en modelo largo, y ademas no se ni siquiera como se podria hacer eso.

Si a alguien le suena este problema y sabe como solucionarlo , estaria eternamente agradecido si me pudiera contestar.

SAludos y gracias.
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

RE:Fread() loco...

Publicado por Juan Palomo (1 intervención) el 12/10/2002 23:00:42
A mi me pasaba lo mismo hasta que abri los ficheros en modo binario.Creo que el fread() de unix los abre por defecto en binario.Para hacer esto usa fopen(<nombre_archivo>,\"rb\") por ejemplo.

Un saludo
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

RE:Fread() loco...

Publicado por chivotario (4 intervenciones) el 12/10/2002 23:01:26
Pues si que tira si.Va a ser lo que tu dices, que el fread de unix ya lo hace por defecto.
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