#include <stdio.h>
#define cd(x) ((x)!='0')
int c_d(int* p){unsigned i=8;int j=0;while(i--)j|=(cd(p[7-i])<<i);return j;}voi\
d ph(int i){char* h="0123456789ABCDEF";fputc(h[((i>>4)&15)],stdout);fputc(h[(i&\
15)],stdout);}int main(){int c[8];int f=0;while((c[f]=fgetc(stdin))!=EOF){if(f=\
=7)ph(c_d(c));f=(++f)%8;}return 0;}

2進数->16進数 した後、stdoutに出力
さっきのと組み合わせて

txt2bin < bin2hex < xxx

やると>>33 のがカレントディレクトリのtext_to_bin.logに出てくる。





と独り言を言ってみるテスト