unesc.c
来自「这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易」· C语言 代码 · 共 49 行
C
49 行
/* * upas/unesc - interpret =?foo?bar?=char?= escapes */#include <stdio.h>#include <stdlib.h>inthex(int c){ if('0' <= c && c <= '9') return c - '0'; if('A' <= c && c <= 'F') return c - 'A' + 10; if('a' <= c && c <= 'f') return c - 'a' + 10; return 0;}voidmain(int argc, char **argv){ int c; while((c=getchar()) != EOF){ if(c == '='){ if((c=getchar()) == '?'){ while((c=getchar()) != EOF && c != '?') continue; while((c=getchar()) != EOF && c != '?') continue; while((c=getchar()) != EOF && c != '?'){ if(c == '='){ c = hex(getchar()) << 4; c |= hex(getchar()); } putchar(c); } (void) getchar(); /* consume '=' */ }else{ putchar('='); putchar(c); } }else putchar(c); } exit(0);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?