?? rince.c
字號:
/** J.K.Bonfield **^ < ^ > < # > v < < < > > < v X X jx X jX x ^ k^ ^ ^ # X X X X^ v v v v # v X v x > # < v > > X X lx X l41 20######################################### ## < < < < <> < < < ## > > > <> > > > > ## < < < < <> < < < ## > > > <> > > > > ## < < < < <> < < < ## > > > <> > > > > ## ## ## ## ## ## ## ## ## ## ## X #########################################*/#include <stdio.h>#include <curses.h>#include <stdlib.h>#include <setjmp.h>#include <sys/time.h>int _tty_ch;bool _echoit;bool _rawmode;SGTTY _tty;#define U char#define G for(#define I )malloc(sizeof(typedef struct z {U x[20]; struct z*y; } j; j*J[2][256];struct timeval v= {0,1<<17} ;U**X,c,*P="noopoqqnr",d;j*a(int Q, int i) { G clear(),noecho(),cbreak(); ;){ int x=0,y=0,W=Q,Q=i-1,k; G; y<=Q; (mvaddch(y,x,X[y][x]),++x^W-1)||(x=0,y++)); k=y=- --x; G refresh(),c=select(k,&y,0,0,&v)?getch():0; k?++x-W||(x=1,++y-Q||(--k,x=W-1,y=Q-1)):--x||(y--,x=W-1),k|y;){ j *t; G t=J[1-k][X[y][x]]; t; t=t->y) { U*f=t->x; if (d==f[17]|f[17]==c) { int i=k&2,u=9,k=1,w=x,_=y,T; G; --u||(d-f[8]&&(X[y][x]=f[8]),w---_--,i=0,u=8,k--);) { _+=P[T=i>u?u:i]-'o'; w+=P[4+T]-'p'; if(k) { if (d-f[i]&&f[i]-X[_][w]) break; i++; } else f[++i+8]-d && (X[_][w]=f[i+8]);} } } } } }jmp_buf E;int main(int open, U**exit) { FILE*C=fopen ( open-2?__FILE__:*++exit,P+8); j*t; volatile int Q,Y=0; int i,q; d=open-2?'\t':'*'; L: Q=0; G; setjmp(E)<256; Q-- ) longjmp(E,(J[Y][Q]=0,Q++)); G; ; ) { if(!C)return 1; if('\n'==(c=getc(C))) if(!Y++)goto L; else { fscanf(C,"%d %d\n",&i,&q); X=(U**I P++)*q*(i+1)); Q=0; G; Q<q; Q++) X[Q]=(U*)&X[q]+Q*i; fread(*X,(initscr(),q*i),1,C); a(i,Q); } t=(j*I*a(Q--,--Q))); t->y=J[Y][c]; J[Y][c]=t; fgets(t->x,20,C); }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -