《编译原理语法分析CharStack》由会员分享,可在线阅读,更多相关《编译原理语法分析CharStack(2页珍藏版)》请在金锄头文库上搜索。
1、编译原理语法分析CharStack.h2007-11-16 09:20/ File Name: CharStack.h#define MAX_DATA_LEN 256 / 数据缓冲区长度/ word type#define WT_OPERATOR 0 / 操作符#define WT_UINT 1 / 非负整数#define WT_VARIABLE 2 / 变量struct WORDNODE / 单词序列节点unsigned short byType; / 类别char ValueMAX_DATA_LEN; / 值WORDNODE *pNext; / 下一结点;struct CHARNODEch
2、ar cCur; / 当前符号WORDNODE *pWord; / 单词节点;CHARNODE m_CharStack1024;int m_nCharTop = -1;void InitCharStack()m_nCharTop = -1;void PushChar(char c, WORDNODE *pWord)+m_nCharTop;m_CharStackm_nCharTop.cCur = c;m_CharStackm_nCharTop.pWord = pWord;CHARNODE* PopChar()return &m_CharStackm_nCharTop-;void PopCharN(int n)m_nCharTop = m_nCharTop - n;CHARNODE* TopChar()return &m_CharStackm_nCharTop;void PrintCharStack()int i;for (i = 0; i = m_nCharTop; i+) printf(%c, m_CharStacki.cCur);for (; i 15; i+) printf( );