七行プログラミング

このエントリーをはてなブックマークに追加
609dmp.c
/* こんなスレあったんですね。
Win98にはdump.exeがナイので昔作ったモノ。技のないダサいプログラムですが。*/
#include <stdio.h>
main(a,v)char**v;{FILE*f;char c,s[80],t[20];long p=0,m=0,n;if(a>1&&(f=fopen
(v[1],"rb"))){if(a>2)sscanf(v[2],"%x",&p);if(p>0)fseek(f,p,SEEK_SET);if(a>3
)sscanf(v[3],"%x",&m);if(n=p%16){sprintf(s,"%08X: %*s",p,n*3,"");sprintf(t,
"%20s","");}for(;(!m||p<m)&&fread(&c,1,1,f);p++){if(!(n=p%16))sprintf(s,"%"
"08X: ",p);sprintf(s+9+n*3," %02X",c&255);t[n]=(((unsigned)c<32||c==127)?
'.':c);t[n+1]=0;if(n==15)printf("%s : %""s\n",s,t);}if(p%16)printf("%-58s:"
" %s\n",s,t);}else puts("USAGE:dmp filename [start [end]]");}