4
Q
BNF語法歧義
A
回答
5
如果一個特定的字符串可以有多個分析樹,則語法是不明確的。在你的語言字符串yyxzx
可以有兩個分析樹:
A A
/\ /|\`\
y A y A z A
/|\`\ /\ \
y A z A y A x
| | |
x x x
因此,語法是不明確的。
這實際上相當於C語言中臭名昭着的「if/then/else」歧義,其中y=if
,z=else
和x=statement
。 http://en.wikipedia.org/wiki/Dangling_else。我建議查看該頁面,瞭解如何解決此問題的想法。
相關問題
- 1. 處理BNF語法中的歧義
- 2. 語義歧義的歧義語法
- 3. 歧義語法?
- 4. 的語法歧義
- 5. Antlr4語法歧義
- 6. Java語法歧義
- 7. C++語法歧義
- 8. DrRacket BNF語法
- 9. 檢查語法歧義
- 10. 是這個語法歧義
- 11. ANTLR語法中的歧義
- 12. 解決語法歧義
- 13. 檢查歧義語法
- 14. 歧義JavaScript的語法
- 15. BNF語法衍生
- 16. bnf語法檢查
- 17. 產生BNF語法
- 18. 考慮以下BNF語法(BNF,遞歸)
- 19. 曖昧語法(BNF符號)
- 20. | |如何?影響BNF語法?
- 21. 我的xml的BNF語法
- 22. 函數指針語法歧義
- 23. 野牛語法中的歧義
- 24. 歧義語法和最右派生
- 25. 從語法中消除歧義
- 26. BNF語法使用循環語句
- 27. 用於語句順序的BNF語法
- 28. 野牛/ yacc語法消歧
- 29. 擴展的BNF語法高亮
- 30. VBA的語法(可能是BNF)規範?