fdump.c

来自「Linux下DVB 数字电视播放器,包括IP Over DVB源代码.」· C语言 代码 · 共 45 行

C
45
字号
#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>int main(int argc, char **argv){    unsigned char buf[8];    unsigned int i, count, bytes = 0;    FILE *fd_in, *fd_out;    if (argc != 4) {	fprintf(stderr, "\n\tusage: %s <ucode.bin> <array_name> <output_name>\n\n", argv[0]);	return -1;    }    fd_in = fopen(argv[1], "rb");    if (fd_in == NULL) {	fprintf(stderr, "firmware file '%s' not found\n", argv[1]);	return -1;    }    fd_out = fopen(argv[3], "w+");    if (fd_out == NULL) {	fprintf(stderr, "cannot create output file '%s'\n", argv[3]);	return -1;    }    fprintf(fd_out, "\n#include <asm/types.h>\n\nu8 %s [] = {", argv[2]);    while ((count = fread(buf, 1, 8, fd_in)) > 0) {	fprintf(fd_out, "\n\t");	for (i = 0; i < count; i++, bytes++)	    fprintf(fd_out, "0x%02x, ", buf[i]);    }    fprintf(fd_out, "\n};\n\n");        fclose(fd_in);    fclose(fd_out);    return 0;}

⌨️ 快捷键说明

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