📄 mem.c
字号:
# include "stdio.h"# include "lrnref"# define SAME 0struct keys { char *k_wd; int k_val;} keybuff[] = { {"ready", READY}, {"answer", READY}, {"#print", PRINT}, {"#copyin", COPYIN}, {"#uncopyin", UNCOPIN}, {"#copyout", COPYOUT}, {"#uncopyout", UNCOPOUT}, {"#pipe", PIPE}, {"#unpipe", UNPIPE}, {"#succeed", SUCCEED}, {"#fail", FAIL}, {"bye", BYE}, {"chdir", CHDIR}, {"cd", CHDIR}, {"learn", LEARN}, {"#log", LOG}, {"yes", YES}, {"no", NO}, {"#mv", MV}, {"#user", USER}, {"#next", NEXT}, {"skip", SKIP}, {"#where", WHERE}, {"#match", MATCH}, {"#bad", BAD}, {"#create", CREATE}, {"#cmp", CMP}, {"#goto", GOTO}, {"#once", ONCE}, {"#", NOP}, {NULL, 0}};int *action(s)char *s;{ struct keys *kp; for (kp=keybuff; kp->k_wd; kp++) if (strcmp(kp->k_wd, s) == SAME) return(&(kp->k_val)); return(NULL);}# define NW 100# define NWCH 800struct whichdid { char *w_less; int w_seq;} which[NW];int nwh = 0;char whbuff[NWCH];char *whcp = whbuff;setdid(lesson, sequence)char *lesson;{ struct whichdid *pw; for(pw=which; pw < which+nwh; pw++) if (strcmp(pw->w_less, lesson) == SAME) { pw->w_seq = sequence; return; } pw=which+nwh++; if (nwh >= NW) { fprintf(stderr, "nwh>=NW\n"); wrapup(1); } pw->w_seq = sequence; pw->w_less = whcp; while (*whcp++ = *lesson++); if (whcp >= whbuff + NWCH) { fprintf(stderr, "lesson name too long\n"); wrapup(1); }}already(lesson, sequence)char *lesson;{ struct whichdid *pw; for (pw=which; pw < which+nwh; pw++) if (strcmp(pw->w_less, lesson) == SAME) return(1); return(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -