⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shchars.c

📁 dtelent是开源的开发项目
💻 C
字号:
/* shchars.c *//* compile me: cc -o shchars -lcurses shchars.c */#include <curses.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <term.h>static unsigned char stoplist [256];static void ruler (void);int main (void){    const char *term, *smacs, *rmacs, *acsc;    int err, rc, i, j, c, len;    term= getenv ("TERM");    if (term) {        fprintf (stderr, "TERM=%s\n", term);    } else {        fprintf (stderr, "TERM variable not set, exiting\n");	return 4;    }    rc= setupterm ((char *)term, 1, &err);    if (rc!=OK) {        fprintf (stderr, "setupterm failed err=%d\n", err);	return 4;    }    smacs= tigetstr ("smacs");    rmacs= tigetstr ("rmacs");    acsc = tigetstr ("acsc");    if (smacs==NULL || smacs==(char *)-1 ||        rmacs==NULL || rmacs==(char *)-1 ||	acsc ==NULL || acsc ==(char *)-1) {        fprintf (stderr, "could not get smacs, rmacs or acsc\n");	return 8;    }    /* enable graphical characters */    for (len= strlen (acsc), i=0; i<len-1; i+=2) {        stoplist [(unsigned char)acsc[i+1]] &= ~2;    }        ruler ();    for (i=0x00; i<=0xf0; i+=0x10) {        printf ("%02x  ", i);        for (j=0x0; j<=0xf; j++) {	    c= i+j;	    if (stoplist[c] & 1) printf (". ");	    else                 printf ("%c ", c);	}	printf (" %02x  %s", i, smacs);        for (j=0x0; j<=0xf; j++) {	    c= i+j;	    if (stoplist[c] & 2) printf (". ");	    else                 printf ("%c ", c);	}	printf ("%s %02x\n", rmacs, i);    }    ruler ();    return 0;}static void ruler (void){    int j;        printf ("    ");    for (j=0; j<=0xf; ++j) {        printf ("%x ", j);    }    printf ("     ");    for (j=0; j<=0xf; ++j) {        printf ("%x ", j);    }    printf ("\n");}/*  If the output of this program is broken, *  you may increase values of this table: *  1 means: dont show it as regular character, *  2 means: dont show it as graphic character, *  3 means: do not show it at all */static unsigned char stoplist [256] = {/* 00 */ 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,/* 10 */ 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,/* 20 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* 30 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* 40 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* 50 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* 60 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* 70 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,/* 80 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* 90 */ 0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,/* a0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* b0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* c0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* d0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* e0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,/* f0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,};

⌨️ 快捷键说明

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