📅  最后修改于: 2020-12-06 07:34:55             🧑  作者: Mango
符号表是在编译器中使用的重要数据结构。
符号表用于存储有关各种实体(例如对象,类,变量名,接口,函数名等)的出现的信息。在分析和合成阶段均使用该表。
符号表用于以下目的:
符号表可以是线性表或哈希表。使用以下格式,它维护每个名称的条目。
例如,假设一个变量存储有关以下变量声明的信息:
static int salary
然后,它以以下格式存储条目:
子句属性包含与名称相关的条目。
如果使用编译器处理少量数据,则可以在无序列表中实现符号表。
可以使用以下技术之一来实现符号表:
符号表主要实现为哈希表。
符号表提供以下操作:
int x;
编译器应按以下方式处理:
insert (x, int)
在符号表中,lookup()操作用于搜索名称。它用于确定:
lookup()函数的基本格式如下:
lookup (symbol)
该格式根据编程语言而有所不同。