symbol-table

    2熱度

    2回答

    我正在爲類似C的語言(更簡單的一種)構建一個編譯器(不使用任何類似工具的lex或bison),並且已經超越了詞法分析器和解析器。 我不確定我在做解析器的方式是否正確。因爲,到目前爲止進行解析,即檢查語法是否正確,我根本沒有使用鏈表。 基本上,我的解析器是這樣的: 假設語法 - <program> ::= <program_header> <program_body> <program_heade

    1熱度

    1回答

    我正在爲C++子集的編譯器構建符號表。 這裏我的問題是如何處理對象的範圍。我的意思是,在像Pascal這樣的普通語言中,我們應該爲每個範圍創建一個符號表。但是對於C++,我應該考慮對象的方法和屬性的另一種情況嗎? 問候。

    4熱度

    1回答

    我有一個可執行文件,我正在使用gdb進行調試。這是我第一次使用gdb,請耐心等待。 我想在函數中設置一個斷點,我知道使用類轉儲的函數的名稱。現在它不會讓我爲該函數添加斷點,因爲它表示沒有符號表。我試圖添加符號表,但它仍然抱怨沒有符號表加載。 那麼,有什麼方法可以在此方法中設置斷點?這是一個客觀的c方法,而不是c(如果這有所影響)。我需要做的就是檢查這種方法的論點。

    0熱度

    2回答

    創建解析樹後,我必須現在填充符號表。 我必須存儲信息,如 類型,範圍,偏移等的標識符。 現在我該如何知道標識符的類型和範圍,因爲我所知道的是該特定ID的詞位值和行號(在詞法分析之後)。 我怎麼知道整件事情。謝謝。

    -1熱度

    1回答

    符號表給出按鍵排序的結果,但我們如何按值排序符號表。我用Arrays.sort(st,st.get(key)),但給我一個錯誤: cannot find symbol: method sort(ST,java.lang.Integer) 我的計劃是這個樣子。仍然得到錯誤: import java.util.Comparator; import java.util.Arrays; public

    2熱度

    3回答

    我正在Ruby中構建一個詞法分析器,並且即將開始在符號表中收集和存儲符號。我關於符號設計的主要問題以及它是否應該是靜態表(意味着所有數據將保持在課程級別),還是應該以實例爲基礎。 選項1:類級別的數據結構 require 'SymbolTableEntry.rb' class SymbolTable @sym_table = Array.new(500) def initi

    8熱度

    4回答

    我們如何看到Python源代碼的符號表? 我的意思是,在每個程序實際運行之前,Python爲它製作了一個符號表,所以我的問題是如何將該符號表作爲輸出?

    1熱度

    1回答

    我的web應用程序現在崩潰,通過此錯誤: RuntimeError (symbol table overflow (symbol _one_time_conditions...)): app/controllers/application_controller.rb:3 之後,從開始1天左右會出現錯誤,並重新開始重新啓動Web應用程序後正常。 任何人都可以幫助提供解決方案嗎? 如下的版本: rub

    6熱度

    1回答

    我們有作爲編譯器的任務。我們已經做了詞彙和語法分析,但是我們堅持生成中間代碼。我們意識到我們必須實現一個符號表以進行中間代碼生成,我們不知道,如何去做以及它包含什麼。 給定下面的代碼,符號表應該包含什麼? (該代碼是用下面描述的教育語言編寫的) 另外我們如何在符號表中實現範圍? <PROGRAM> ::= PROGRAM ID <BLOCK> ENDPROGRAM <BLOCK> ::= {<D

    8熱度

    1回答

    爲什麼在刪除相應的符號表條目之後從「$ n」和「$ m」得到值? #!/usr/bin/env perl use warnings; use 5.012; package Foo; our $n = 10; our $m = 20; delete $Foo::{'n'}; delete $Foo::{'m'}; say $n; # 10 say $m; # 20