symboltable.cpp

来自「词法分析器c++实现」· C++ 代码 · 共 47 行

CPP
47
字号
#include"SymbolTable.h"
using namespace std;

SymbolTable::SymbolTable()
{
	count=0;
}
SymbolTable::SymbolTable(Element array[],int number)
{
	count=number;
	int c;
	for(c=0;c<=count;c++)
		table[c]=array[c];
}
bool SymbolTable::isPresent(string token0)
{
	int c;
	for(c=0;c<=count;c++)
	{
		if(table[c].token==token0)
			return true;
	}
			return false;

}
void SymbolTable::insert(Element entry)
{
	if(!isPresent(entry.token))
	{
		table[count].token=entry.token;
	    table[count].line=entry.line;
	}
	count++;
}
void SymbolTable::outPutTable(ofstream& out)
{int c;
     for(c=0;c<count;c++)
	 {
	out<<"Token:  "<<table[c].token<<"   Line:  "<<table[c].line<<endl;
	 }
}


	    
			
	

⌨️ 快捷键说明

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