myod选做

要求:
1 复习c文件处理内容

2 编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能

3 main与其他分开,制作静态库和动态库

4 编写Makefile

5 提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息

6 在博客园发表一篇博客,重点写遇到的问题和解决过程

 

 

1.C语言文件处理内容

(1)打开文件:fopen()

FILE *fopen(const char *filename, const char *mode)

其功能是使用给定的模式 mode 打开 filename 所指向的文件。文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回 NULL,并把错误代码存在 error 中。该函数位于C 标准库<stdio.h>中

(2)关闭文件:fclose()

函数原型:int fclose( FILE *fp );

返回值:如果流成功关闭,fclose 返回 0,否则返回EOF(-1)。(如果流为NULL,而且程序可以继续执行,fclose设定error number给EINVAL,并返回EOF。)

(3)写入文本文件:fputc()

int fputc (int c, File *fp)

在正常调用情况下,函数返回写入文件的字符的ASCII码值,出错时,返回EOF(-1)。当正确写入一个字符或一个字节的数据后,文件内部写指针会自动后移一个字节的位置。

(4)读取文本文件:fgetc()

int fgetc(FILE *stream)

从文件指针stream指向的文件中读取一个字符,读取一个字节后,光标位置后移一个字节。

2.od命令

od命令用于将指定文件内容以八进制、十进制、十六进制、浮点格式或ASCII编码字符方式显示,通常用于显示或查看文件中不能直接显示在终端的字符。

常见的文件为文本文件和二进制文件。od命令主要用来查看保存在二进制文件中的值,按照指定格式解释文件中的数据并输出。

od -tx -tc File是先在以十六进制输出File文件内容的同时,输出字节对应的ASCII值

 

 

head.h

 

 od.c 用来实现od -tx -tc 的功能

 

 

myod.c

 

 运行结果(以20191202为例)

 

posted @ 2021-09-26 22:55  20191202王皓岩  阅读(30)  评论(0编辑  收藏  举报