linux的od命令怎么用c语言来实现?(救急呀!分全拿出来了,大家帮帮忙...
发布网友
发布时间:2022-04-26 15:47
我来回答
共2个回答
懂视网
时间:2023-01-22 01:36
od命令是linux下的一个文件管理命令,它主要有一种功能,具体介绍如下:
od命令可以读取所给予的文件的内容,并且将其内容以八进制字码的方式呈现出来。
od命令的具体命令格式为 od [OPTION] [FILE],语法格式也就是od [参数]。
参数:
-a 此参数的效果与同时指定”-ta”参数相同
-A 选择要以何种基数计算字码
-b 此参数的效果与同时指定”-toC”参数相同
-c 此参数的效果与同时指定”-tC”参数相同
-d 此参数的效果与同时指定”-tu2″参数相同
-f 此参数的效果与同时指定”-tfF”参数相同
-h 此参数的效果与同时指定”-tx2″参数相同
-i 此参数的效果与同时指定”-td2″参数相同
参考范例:
使用 od 命令,具体代码如下:
$ od -b tmp
0000000 141 142 143 144 145 146 040 147 012
0000011
以上就是小编的分享了,希望能够帮助到大家。
热心网友
时间:2023-01-21 22:44
没时间给你做。提示如下
od命令的位置参数选项很多,用c语言位置参数读入分析。
void main(int argc, char *argv[]){}
argc 里是读得的位置参数的个数,包括程序名。
argv[i]里是读得的位置参数的字符串。i=0 程序名,i=1参数1
分析方法,例如:
for (i=1;i<argc;i++){
if (strncmp(argv[i],"-d",2) == 0 ){
// Print as unsigned decimal shorts.
// 按无符号十进制 unsigned short int 输出
};
if (strncmp(argv[i],"-h",2) == 0 ){
// Print as hexadecimal shorts
// 按无符号十六进制 输出
};
。。。。
}
按二进制打开文件。读的顺序按输出要求,unsigned short int 是两个两个bytes. 浮点输出要考虑 选项 D,L,F,D,L是4个bytes,F是两个。
每16个bytes,作一行,第一列是相对地址--第几个byte,接下来 是值。
格式 %04x 就是4位十六进制, o 是八进制, d是十进制