hexdump.c

来自「flash swf file player」· C语言 代码 · 共 72 行

C
72
字号
#include <stdio.h>#include <stdlib.h>#define print(x)	{fputs(x,stdout);}void dumpBytes(FILE *f){  int j=0, i, k, b;  unsigned char buf[16];  for(;;)  {    printf("%03X0: ",j);    ++j;    for(i=0; i<16; ++i)    {      b = fgetc(f);      if(b == EOF)	break;      printf("%02x ", buf[i] = (unsigned char)b);      if(i==7) putchar(' ');    }    if(b == EOF)    {      for(k=i; k<16; ++k)      {	if(k==7) putchar(' ');	print("   ");      }    }    print("   ");    for(k=0; k<i; ++k)    {      if((buf[k] > 31) && (buf[k] < 128))	putchar(buf[k]);      else	putchar('.');      if(k==7) putchar(' ');    }    putchar('\n');    if(b == EOF)      break;  }  putchar('\n');}int main(int argc, char *argv[]){  FILE *f;  int i=0, c;  if(argc<2 || !(f = fopen(argv[1], "rb")))  {    printf("Gimme a file name.\n");    exit(1);  }  dumpBytes(f);  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?