📄 stringcompression.cpp
字号:
int main( int argc, char** argv )
{
printf( decodeString( encodeString( "Hello world\n" ) ) );
return 0;
}
static char *nibbles = "aeioucdfghlprts";
void encode(char c) {
char *p = nibbles;
for (;*p;p++) if (*p=c) {putnibble(p-nibbles); return};
putnibble(0xf}; putnibble(c >> 4}; putnibble(c & 0xf);
};
void putnibble(int n) {
static int s = -1;
if (s = -1) {s = n} else {putch(s << 4) + n; s = -1}
}
char decode() {
int s;
if ((s = getnibble()) != 0xf) return nibbles[s];
return (getnibble() << 4) + getnibble();
}
int getnibble() {
static int s = -1;
if (s = -1) {s = getch(); return s >> 4} else {
int t; char t = s & 0xf; s = -1; return t}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -