20010408-1.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 78 行

C
78
字号
extern struct win *windows, *wtab[];struct win{  struct win *w_next;};struct auser;struct comm{  char *name;  int flags;};extern struct comm comms[];extern int WindowByNoN (char *);extern int FindCommnr (char *);extern int AclSetPermCmd (struct auser *, char *, struct comm *);extern int AclSetPermWin (struct auser *, struct auser *, char *, struct win *);int  AclSetPerm(uu, u, mode, s)    struct auser *uu, *u;char *mode, *s;{  struct win *w;  int i;  char *p, ch;  do     {    }  while (0);  while (*s)    {      switch (*s)	{  	case '*':	  return AclSetPerm(uu, u, mode, "#?");	case '#':	  if (uu)	    AclSetPermWin(uu, u, mode, (struct win *)1);	  else	    for (w = windows; w; w = w->w_next)	      AclSetPermWin((struct auser *)0, u, mode, w);	  s++;	  break;	case '?':	  if (uu)	    AclSetPermWin(uu, u, mode, (struct win *)0);	  else	    for (i = 0; i <= 174; i++)	      AclSetPermCmd(u, mode, &comms[i]);	  s++;	  break;	default:	  for (p = s; *p && *p != ' ' && *p != '\t' && *p != ','; p++)	    ;	  if ((ch = *p))	    *p++ = '\0';	  if ((i = FindCommnr(s)) != -1)	    AclSetPermCmd(u, mode, &comms[i]);	  else if (((i = WindowByNoN(s)) >= 0) && wtab[i])	    AclSetPermWin((struct auser *)0, u, mode, wtab[i]);	  else	    return -1;	  if (ch)	    p[-1] = ch;	  s = p;	}    }  return 0;}

⌨️ 快捷键说明

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