2010-06-16 31 views
0

變量/標識符的範圍如何在c/C++編譯器的符號表中維護。如何維護變量/標識符的範圍?

請建議一些很好的鏈接和書籍,以瞭解如何編譯c/C++程序,以便更好地理解程序。

+0

如果您對具體實現感興趣,爲什麼不看看GNU編譯器集合('gcc' /'g ++')的源代碼? – stakx 2010-06-16 07:57:24

+0

Btw。,我想你是在談論詞彙範圍? – stakx 2010-06-16 07:58:35

+0

[C/C++編譯器如何工作?](http://stackoverflow.com/questions/1085490/how-do-cc-compilers-work) – 2010-06-16 07:58:37

回答

0

如果你對理論感興趣,爲什麼不開始例如與臭名昭着的dragon book?它可能不像其他更新的書籍那樣最新,但它畢竟是一個經典,而AFAIK在本書最後還有關於符號表的章節。

如果你有興趣在一個具體的實現,我還是建議你看一看GNU編譯器(尤其是gccg++),因爲它也許是最流行的開放源碼C編譯器的可用。但是,不要忘記,沒有人能夠解決您的任務,從整個休息中挑選出您感興趣的代碼片段! (你根本不會找到一個編譯器只包含符號表/變量的作用域管理的東西。)


PS:如果你有興趣在哈希算法(你在留言中提到這一點),你可以從Wikipedia開始。鮑勃詹金斯的哈希函數(維基百科中提到的鏈接)非常適用於生成良好的哈希。