myod实现

  • 复习c文件处理内容
  • 编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能
  • main与其他分开,制作静态库和动态库
  • 编写Makefile
  • 提交测试代码和运行结果截图, 提交调试过程截图,要全屏,包含自己的学号信息
  • 在博客园发表一篇博客,重点写遇到的问题和解决过程
    贴上代码

head.c

void Hex(char *);
void ascii(char *);

main.c

#include "head.h"
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
int  main()
{
        char str[MAX];
        scanf("%s",str);
        ascii(str);
        Hex(str);
        return 0;
}

hex.c

#include "head.h"
#include<stdio.h>
#include<stdlib.h>
void Hex(char *str)
{
        FILE *fp;
        char ch;
        printf("Hexadecimal numbers: \n");
        fp=fopen(str,"r");
        ch=fgetc(fp);
        while(ch != EOF)
        {
                if(ch=='\n')
                {
                        printf("\n");
                }
                else
                {
                        printf("%x, ",ch);
                }
                ch=fgetc(fp);
        }
        fclose(fp);
}

ascii.c

#include "head.h"
#include<stdio.h>
#include<stdlib.h>
void ascii(char *str)
{
        FILE *fp;
        char ch;
        fp=fopen(str,"r");
        ch=fgetc(fp);
        printf("ascii: \n");
        while(ch != EOF)
        {
                if(ch=='\n')
                {
                        printf("\n");
                }
                else
                {
                        printf("%d, ",ch);
                }
                ch=fgetc(fp);
        }
}


遇到的问题

  • 依旧没有和真正的od命令一样对齐好看
  • 将myod可执行文件的路径加入了PATH变量,可以直接调用
  • 动态库的生成有些生疏,查看了自己之前提交的作业才慢慢想起来

posted on 2018-10-28 23:58  archemiya  阅读(221)  评论(0编辑  收藏  举报

导航