C/C++の宿題を片づけます 49代目
■ このスレッドは過去ログ倉庫に格納されています
0064デフォルトの名無しさん
2005/08/14(日) 13:25:28#include <stdio.h>
#include <stdlib.h>
static const char* hexDigits = "0123456789abcdef";
static const char hexMask = (1 << 4) - 1;
static const int width = 10;
int main(int argc, char* argv[]) {
FILE* fp;
int len, bytes = 0;
unsigned char buf[256];
if(argc <= 1) {
fprintf(stderr, "こう使う。hexdump FILE\n");
exit(1);
}
if((fp = fopen(argv[1], "rb")) == NULL) {
fprintf(stderr ,"ひらけね\n");
exit(1);
}
while(0 < (len = fread(buf, sizeof(char), sizeof(buf), fp))) {
int i;
for(i=0; i < len; i++) {
putchar( hexDigits[(buf[i] >> 4) & hexMask] );
putchar( hexDigits[ buf[i] & hexMask] );
printf("%s", ((++bytes % width) == 0)? "\n": " ");
}
}
fclose(fp);
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています