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

📄 symboltable.cpp

📁 对象为c语言子集的词法分析程序 个人的课程代码
💻 CPP
字号:
#include "SymbolTable.h"

SymbolTable::SymbolTable(void)
{
	keywords.insert("auto");
	keywords.insert("enum");
	keywords.insert("restrict");
 	keywords.insert("unsigned");
 
	keywords.insert("break");
 	keywords.insert("extern");
 	keywords.insert("return");
 	keywords.insert("void");
 
	keywords.insert("case");
 	keywords.insert("float");
 	keywords.insert("short");
 	keywords.insert("volatile");
 
	keywords.insert("char");
 	keywords.insert("for");
 	keywords.insert("signed");
 	keywords.insert("while");
 
	keywords.insert("const");
 	keywords.insert("goto");
 	keywords.insert("sizeof");
 	keywords.insert("_Bool");
 
	keywords.insert("continue");
 	keywords.insert("if");
 	keywords.insert("static");
 	keywords.insert("_Complex");
 
	keywords.insert("default");
 	keywords.insert("inline");
 	keywords.insert("struct");
 	keywords.insert("_Imaginary");
 
	keywords.insert("do");
 	keywords.insert("int");
 	keywords.insert("switch");
   
	keywords.insert("double");
 	keywords.insert("long");
 	keywords.insert("typedef");
 
	keywords.insert("else");
 	keywords.insert("register");
 	keywords.insert("union");
}

SymbolTable::~SymbolTable(void)
{
}
	

bool SymbolTable::isKeyword(string token)
{
	if (keywords.find(token)!=keywords.end())
		return true;
	else
		return false;
}

void SymbolTable::installId(string token)
{
	symbolTable[token] = "id";
}

void SymbolTable::installNum(string token)
{
	symbolTable[token] = "num";
}

//SymbolTable* SymbolTable::getInstance()
//{	
//	if ( instance == NULL )
//		instance = new SymbolTable();
//	return instance;
//}

⌨️ 快捷键说明

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