2017-04-20 135 views
0

我想解析這段代碼,它是用我想要的語法編寫的,而且我每次都得到語法錯誤。我檢查了我的代碼超過10次,我無法找到解決方案。 PARSERLEXER代碼分別由bison和jflex生成,因爲它們很長,我不得不提到一個鏈接到我的github。 這是我簡單的一段代碼,但是當我運行該程序時,它給了我語法錯誤。如何在解析器中解決未知的語法錯誤?

program firstProgram 
main 
{ 

} 

感謝您幫助我解決這個問題。

+0

@rici你是這方面的專家。你能幫我解決這個問題嗎? – aligholamee

+0

'statement_list'不會產生空字符串,所以'{}'不是'block'產生的。 (如果您刪除語法文件中的所有多餘語言,可能會更容易看出,因爲我相信我已經提出過了。) – rici

回答

1

首先,您必須安裝了Bison和Lex的所有首選項。之後,在執行程序之前,您需要2個文件。第一個擴展名爲「.l」的文件聲明瞭令牌,第二個文件是「.cpp」擴展名,它將使用該tokes來獲得所需的輸出。 你可以從我的代碼中得到線索。這裏是 [https://github.com/jotpandher/Flex-Bison-task][1]

相關問題