2010-01-22 163 views
5

我得到了二进制文件,其中包含双打。我如何将它打印到终端上。 我已经试过octaldump“OD”,但无法弄清楚我试过的东西语法类似如何从命令行打印二进制双数组(unix)

head -c80 |od -f 

但是,这并不工作,为OD手册页是极其恶劣的。

我已经做了一个c程序,做我想做的, 类似于假设10double块。

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

谢谢。

回答

4

您是否试过hexdump工具?

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

如果格式字符串应该是"%f",字节数应为8,和迭代你想读花车量

+0

谢谢这是非常有用的 – monkeyking 2010-01-25 23:34:37

4

你要找的od命令

od -t fD 

(这意味着“浮点值,double大小”)。