gen_ctab.c
来自「bbs server linux平台下软件源码」· C语言 代码 · 共 66 行
C
66 行
/* * generate xxx_tables.c file for hztty */#include<stdio.h>static int linemode = 0;main(argc, argv)int argc;char *argv[];{ char *prog = argv[0]; if (argc > 1 && (strcmp(argv[1], "-l") == 0)) { linemode = 1; argc--; argv++; } if (argc != 3) { fprintf(stderr, "Usage: %s [-l] map_file variable_name\n", prog); fprintf(stderr, "\t-l: one-char-per-line mode\n"); exit(1); } gen(argv[1], argv[2], stdout); exit(0);}gen(file, varname, of)char *file;char *varname;FILE *of;{ FILE *f; char buf[80]; int c1, c2; int count = 0; f = fopen(file, "r"); if (!f) { perror(file); exit(1); } fprintf(of, "unsigned char %s[] = {\n", varname); while (1) { c1 = getc(f); c2 = getc(f); if (c1 == EOF || c2 == EOF) break; fprintf(of, "0x%02x,0x%02x,", c1, c2); if ((++count % 7) == 0) putc('\n', of); else putc(' ', of); if (linemode) if (getc(f) == EOF) /* to eat the '\n' */ break; } fprintf(of, "\n"); fprintf(of, "};\n"); fprintf(of, "int %s_count = %d;\n", varname, count); fprintf(of, "\n");}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?