1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
int i, j = 0;
FILE *f;
if(argc > 1) {
if(!(f = fopen(argv[1], "r"))) {
perror(argv[1]);
return 1;
}
}
else {
fprintf(stderr, "usage: bin2c file\n");
return 2;
}
printf("unsigned char %s_data[] = {\n", argv[1]);
while((i = fgetc(f)) != EOF) {
i = i & 0xff;
if(!j++) {
printf(" ");
}
else {
printf(",%s", (j & 7) != 1 ? "" : "\n ");
}
printf(" 0x%02x", i);
}
printf("\n};\n");
return 0;
}
|