⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 expected.out.5

📁 早期freebsd实现
💻 5
字号:
/* C code produced by gperf version 2.5 (GNU C++ version) *//* Command-line: ../src/gperf -g -o -j1 -t -p -N is_reserved_word  *//* ISO Pascal 7185 reserved words. * * For GNU Pascal compiler (GPC) by jtv@hut.fi * * run this through the Doug Schmidt's gperf program * with command * gperf  -g -o -j1 -t -p -N is_reserved_word * */struct resword { char *name; short token; short iclass;};#define TOTAL_KEYWORDS 35#define MIN_WORD_LENGTH 2#define MAX_WORD_LENGTH 9#define MIN_HASH_VALUE 2#define MAX_HASH_VALUE 43/* maximum key range = 42, duplicates = 0 */#ifdef __GNUC__inline#endifstatic unsigned inthash (str, len)     register char *str;     register int unsigned len;{  static unsigned char asso_values[] =    {     44, 44, 44, 44, 44, 44, 44, 44, 44, 44,     44, 44, 44, 44, 44, 44, 44, 44, 44, 44,     44, 44, 44, 44, 44, 44, 44, 44, 44, 44,     44, 44, 44, 44, 44, 44, 44, 44, 44, 44,     44, 44, 44, 44, 44, 44, 44, 44, 44, 44,     44, 44, 44, 44, 44, 44, 44, 44, 44, 44,     44, 44, 44, 44, 44, 18, 29, 14,  6,  7,     10, 20, 44, 28, 44, 44, 28, 19, 22, 15,      0, 44,  9, 23,  0, 23, 26,  2, 44, 44,     44, 44, 44, 44, 44, 44, 44, 44, 44, 44,      0,  0, 13, 44, 30, 44, 44, 44,  0, 25,      1,  0, 44, 44,  0, 44,  1, 44, 25, 44,     44,  0, 44, 44, 44, 44, 44, 44,    };  return len + asso_values[str[len - 1]] + asso_values[str[0]];}#ifdef __GNUC__inline#endifstruct resword *is_reserved_word (str, len)     register char *str;     register unsigned int len;{  static struct resword wordlist[] =    {      {"",}, {"",},       {"To",  TO, PASCAL_ISO},      {"",},       {"Type",  TYPE, PASCAL_ISO},      {"Then",  THEN, PASCAL_ISO},      {"Packed",  PACKED, PASCAL_ISO},      {"While",   WHILE,  PASCAL_ISO},      {"Do",  DO, PASCAL_ISO},      {"Procedure",  PROCEDURE, PASCAL_ISO},      {"End",   END,  PASCAL_ISO},      {"Else",  ELSE, PASCAL_ISO},      {"Downto",  DOWNTO, PASCAL_ISO},      {"For",   FOR,  PASCAL_ISO},      {"File",  FILE_,  PASCAL_ISO},      {"Record",  RECORD, PASCAL_ISO},      {"Repeat",  REPEAT, PASCAL_ISO},      {"Or",  OR, PASCAL_ISO},      {"Case",  CASE, PASCAL_ISO},      {"Function",  FUNCTION, PASCAL_ISO},      {"Const",   CONST,  PASCAL_ISO},      {"And",   AND,  PASCAL_ISO},      {"Mod",   MOD,  PASCAL_ISO},      {"Array",   ARRAY,  PASCAL_ISO},      {"Goto",  GOTO, PASCAL_ISO},      {"Nil",   NIL,  PASCAL_ISO},      {"Not",   NOT,  PASCAL_ISO},      {"Set",   SET,  PASCAL_ISO},      {"Until",   UNTIL,  PASCAL_ISO},      {"Var",   VAR,  PASCAL_ISO},      {"Of",  OF, PASCAL_ISO},      {"In",  IN, PASCAL_ISO},      {"Program", PROGRAM,PASCAL_ISO},      {"Label",   LABEL,  PASCAL_ISO},      {"Div",   DIV,  PASCAL_ISO},      {"Begin",   BEGIN_, PASCAL_ISO},      {"With",  WITH, PASCAL_ISO},      {"",}, {"",}, {"",}, {"",}, {"",}, {"",},       {"If",  IF, PASCAL_ISO},    };  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)    {      register int key = hash (str, len);      if (key <= MAX_HASH_VALUE && key >= 0)        {          register char *s = wordlist[key].name;          if (*s == *str && !strcmp (str + 1, s + 1))            return &wordlist[key];        }    }  return 0;}

⌨️ 快捷键说明

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