码迷,mamicode.com
首页 > 其他好文 > 详细

MyOD

时间:2018-09-24 00:36:03      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:clu   etc   ring   ini   conio.h   print   str   argv   turn   

MyOD

od -tx -tc 功能

技术分享图片

myod.c 代码(可将tx,tc函数单独贴在另外两个.c文件中)

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>
#include <conio.h>

void tc(FILE *file);
void tx(FILE *file);

int main(int argc,char *argv[])
{
    FILE *file=fopen(argv[1],"r");
    tx(file);
    tc(file);
    return 0;
}

void tc(FILE *file)
{
    char ch[18];
    int i=0,j=0;
    while(fgets(ch,17,file)!=NULL){

    printf("%07o",16*j);
    j++;
    for(i=0;i<16;i++)
    {
        if(ch[i]==‘\n‘)
        {   i++;
            putchar(‘ ‘);
            printf("\\n");

        }
        if(ch[i]==‘\0‘)
        break;
        putchar(‘ ‘);
        putchar(‘ ‘);
        printf("%c", ch[i]);
        putchar(‘ ‘);

    }
    printf("\n\n");
    }
    printf("%07o",16*(j-1)+i);
    fclose(file);
}
void tx(FILE *file)
{
    //Initialize the coordinates
   COORD coord = {0, 1};
   //Set the position
   SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
    char ch[18];
    int i;
    while(fgets(ch,17,file)!=NULL){

    printf("       ");

    for(i=0;i<16;i++)
        {

            if(ch[i]==‘\n‘)
            {   i++;
                printf("%3x ",‘\n‘);
            }
            if(ch[i]==‘\0‘)
            break;
            printf("%3x ",ch[i]);
        }
    printf("\n\n");
    }
    fclose(file);
}

MyOD

标签:clu   etc   ring   ini   conio.h   print   str   argv   turn   

原文地址:https://www.cnblogs.com/treebeard123/p/9693899.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!