scan.h

来自「一个c-语言的词法分析器」· C头文件 代码 · 共 27 行

H
27
字号
#ifndef _SCAN_H_
#define _SCAN_H_

#define MAXTOKENLEN 40
#define MAXRESERVED 6
#define TRUE 1
#define FALSE 0
#define boolean int

extern char tokenString[MAXTOKENLEN + 1];

typedef enum //枚举各种token类型
{ERROR,IF,ELSE,INT,RETURN,VOID,WHILE,
ID,NUM,
PLUS,MINUS,TIMES,DIVIDE,GT,LT,GE,LE,EQ,NE,ASSIGN,SEMICOLON,COMMA,LPAREN,RPAREN,LBRACKET,RBRACKET,
/*+    -     *     /     > <  >= <= == !=    =      ;        ,     (      )     {         }    */
LSBRACKET,RSBRACKET,NOT} TokenType;
//  [         ]		 !
struct Token  //定义Token
{
	TokenType type;  //类型
	char value[MAXTOKENLEN + 1]; //串值
};

Token getToken(void);

#endif

⌨️ 快捷键说明

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