當前位置:編程學習大全網 - 源碼下載 - C++編輯器是用什麽寫的

C++編輯器是用什麽寫的

現在C++編譯器通常是C++寫的 似乎是個雞生蛋的問題

壹般來說壹種新語言的編譯器是這樣的

首先用壹種低級語言寫壹個正確的,但不壹定高效的編譯器

我們稱之為 編譯器A

然後用這種高級語言寫壹個高效的編譯器,用A編譯,於是得到了新的編譯器B 由於是A編譯得到的,B肯定正確,卻不壹定好,很多編譯器級別的優化A沒有做

於是需要用B來編譯B自己的源代碼 這時候就是最終的編譯器了

現在我們可以看出最早的C編譯器是匯編寫的 然後用這個原始的編譯器得到壹個C語言寫的C語言編譯器,而後來的新編譯器大多是用C/C++寫的,適用已有的編譯器編譯得到

其他語言的編譯器多數是C/C++寫的 畢竟他們和操作系統打交道方便。

L_o_o_n_i_e - 所說的

所以C++編輯器即能編譯C++程序,也能編譯C程序。

並不準確,標準的C++編譯器之所以能編譯C程序是因為C++兼容C的絕大部分語法,也就是說C語言很多時候也是C++的代碼

如果在代碼適用了C++不兼容的語法如void*的強制轉換之類,嚴格來說用C++編譯器是編譯不過的,需要定義 extern C來告訴系統適用C編譯器來編譯該部分代碼 現有的IDE和編譯器通常把C++和C編譯器壹起發布的

再來講述壹下匯編和機器碼的問題, 不存在所謂小部分匯編,極少部分機器碼。 因為所有的高級語言(包括C,C++)都是被編譯成體系相關的匯編,然後被體系相關的匯編器直接轉化成機器碼

在有匯編可用的情況下沒有任何必要適用機器碼

  • 上一篇:明代軍事活動與關羽信仰的傳播
  • 下一篇:房地產中介 新興產業的利與弊
  • copyright 2024編程學習大全網