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

📄 clanguageinfo.h

📁 是几份有关编译原理词法分析器的C++编程
💻 H
字号:

#include <string>
#include <list>
#include <map>
#include <fstream>
using namespace std;

#define KEY_COUNT   32
#define MACRO_COUNT 8

string w_key[]={"auto",
	"break",	"case", 	"char",		"const",	"continue",
	"default",	"do",		"double",	"else",		"enum",
	"extern",	"float",	"for",		"goto",		"if",
	"int",		"long",		"register",	"return",	"short",
	"signed",	"sizeof",	"static", 	"struct",	"switch",
	"typedef",	"union",	"unsigned",	"void",		"volatile",
	"while",
};

string w_macro[]={"define","undef","include","if","ifdef", "ifndef","else","endif"
};

typedef struct W_OPERATOR_STRUCT{
	string op;
	int pri;
	string attribute;
}W_OPERATOR_STRUCT;

list<W_OPERATOR_STRUCT*> oplist;


/*
() [] -> .               括号(函数等),数组,两种结构成员访问
! ~ ++ -- + - * & sizeof 否定,按位否定,增量,减量,正负号, 间接,取地址,类型转换,求大小 由右向左 
* / %         乘,除,取模 由左向右 
+ -           加,减
<<  >>        左移,右移 
< <= >= >    小于,小于等于,大于等于,大于 
== !=        等于,不等于 由左向右 
&       按位与 由左向右 
^       按位异或 由左向右 
|       按位或 由左向右 
&&      逻辑与 由左向右 
||      逻辑或 由左向右 
? :     条件 由右向左 
= += -= *= /=  &= ^= |= <<= >>=  各种赋值 由右向左 
, 逗号(顺序) 由左向右
*/

/*
typedef struct W_OPERATOR_STRUCT{
	string opstr;
	int pri;
	int index;
}W_OPERATOR_STRUCT;




//判断处理如下:
单目运算符:( ) [ ] .  ~ ? : , 
双目前符:  -  !  +     -     *  /   %   &      >           <           ^   |      =
双目运算符:-> != ++ += -- -= *= /=  %=  &= &&  >= >>  >>=  <= <<  <<=  ^=  |= ||  ==
*/

⌨️ 快捷键说明

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