2010-01-22 11 views
5

Obtuve un archivo binario que contiene dobles. ¿Cómo lo imprimo en una terminal? He intentado octaldump 'od', pero puedo entender la sintaxis He intentado algo así comocómo imprimo una matriz doble binaria desde la línea de comandos (unix)

head -c80 |od -f 

Pero eso no funciona, el man de OD es extremadamente mala.

He hecho un programa c que hace lo que quiero, algo así como asumir 10double trozos.

double tmp[10]; 
while(fread(tmp,sizeof(double),10,stdin)) 
    for(int i=0;i<10;i++) printf("%f\t",tmp[i]); 

gracias.

Respuesta

4

¿Has probado la utilidad hexdump?

hexdump -e ' [iterations]/[byte_count] "[format string]" ' filename 

Donde cadena formato debe ser "%f", cuenta de bytes debe ser de 8, y las iteraciones de la cantidad de flotadores que desea leer

+0

Gracias esto es bastante útil – monkeyking

4

El comando od que estás buscando es

od -t fD 

(Eso significa "valores de punto flotante, de double tamaño").

Cuestiones relacionadas