+"1"+"1"………
就是左邊顯式轉換然後造成右邊隱式轉換。
如果不喜歡右邊的隱式轉換可以寫成
+"1"+(+"1")
咦我看錯題了?
如果你的問題是如何運算一個算式……
那麼
expr = expr + term|term
term = -term|term*factor|factor
factor = /factor|num|(expr)
消除左遞迴的形式是這樣的
expr=term|term+expr
term=-term|factor*term|factor
factor=/factor|num|(expr)
另外對減號和除號需要額外處理,我們需要在詞法分析時自動新增加號和乘號。這樣的話處理減號和除號其實可以完全交給詞法分析來做……不過無所謂。
那就遞迴下降吧
……被知乎這個編輯器噁心到了反正遞迴下降就是照抄好寫得很……
+"1"+"1"………
就是左邊顯式轉換然後造成右邊隱式轉換。
如果不喜歡右邊的隱式轉換可以寫成
+"1"+(+"1")
咦我看錯題了?
如果你的問題是如何運算一個算式……
那麼
expr = expr + term|term
term = -term|term*factor|factor
factor = /factor|num|(expr)
消除左遞迴的形式是這樣的
expr=term|term+expr
term=-term|factor*term|factor
factor=/factor|num|(expr)
另外對減號和除號需要額外處理,我們需要在詞法分析時自動新增加號和乘號。這樣的話處理減號和除號其實可以完全交給詞法分析來做……不過無所謂。
那就遞迴下降吧
……被知乎這個編輯器噁心到了反正遞迴下降就是照抄好寫得很……