首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

仿 SQL 查詢分析器的 C# 計算器(十三):語法分析堆疊狀態圖解(步驟 10-11)

     編輯:關於C語言

10. 列表分析狀態

…… TokenValue(2) TokenMultiply TokenValue(5)

堆疊分析:棧頂為 TokenValue,當前 TokenRecord 為 TokenMultiply,TokenValue 優先級高於 TokenMultiply。遵循「高出低入」,將 TokenValue 彈棧到暫存變數,檢測堆疊不為空,此時棧頂為 TokenMinus,TokenMinus 優先級低於 TokenMultiply,則將暫存變數中的 TokenValue 加入 TokenMultiply 的 ChildList。遵循「高出低入」,將 TokenMultiply 加入棧頂 TokenMinus 的 ChildList。

TokenMultiply
TokenMinus  棧底

堆疊對應樹狀圖:

11. 列表分析狀態

…… TokenValue(2) TokenMultiply TokenValue(5)

堆疊分析:棧頂為 TokenMultiply,當前為 TokenValue,TokenMultiply 優先級高於 TokenValue。遵循「高出低入」,將 TokenValue 加入 TokenMultiply 的 ChildList。

TokenMultiply
TokenMinus  棧底

堆疊對應樹狀圖:

—

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved