GCC G ICC Clang MSVC BCC等C C 編譯器有什麼特長和不足?

時間 2021-05-30 03:46:05

1樓:zephyr z

ARM上 clang的效能不比GCC5差

Clang也有一些獨有的特色比如code formatter ,Google做的sanitizer , 模組化

2樓:

補充下 Borland C++,被 Embarcadero收購後成為了推出了 RAD Studio,最新版本是Embarcadero RAD Studio 10 Seattle ,支援windows和osx ios開發其中bcc64是基於clang改造的,安裝包體積接近7G。

OpenWatcom 從2023年開始準備支援win64 目前依然不慍不火。Github上可以搜到。

3樓:

其實GCC沒有這麼不堪,除非你想改它的原始碼 ,誠如輪子哥所言,GCC帶了許多不知有卵用的功能,比較混亂。GCC對C++的支援沒有對C的支援那麼有誠意,個人用C首選GCC,用C++的話再考慮其他編譯器。

PS:GCC其實是偽裝成編譯器的某種東西,誰用誰知道(據說信仰點滿後可以飛公升)。

ICC嘛,我想吐槽它的相容性。

MSVC,我寫C++時會用它,感覺面向機器的優化不夠狠,勝在比較人性化(可惜我等搬磚工從來就沒有房子值錢)。

Clang/LLVM是後生,出身好,最近膨脹得很快,但願不要被玩壞。

BCC我沒用過,TC當年倒是把我折騰得死去活來(只是我菜)。

Open64也是個編譯器,由於我才疏學淺,沒看出有它有什麼優點。

4樓:

Borland c++,後端是pascal,號稱是最快的編譯器,現已沒落,新版rad studio已採用clang編譯器。

clang和gcc,緊跟標準,擴充套件與特性最豐富,編譯效率clang勝於gcc,再者,clang對ide特性有良好支援。

icc,針對intel高度優化。

msvc/cl,最常用的編譯器,以穩定高效著稱。

補充幾個古董c++編譯器:cint,watcom c++, visualage, symatec c++,cfront

坐等真的乾貨。

C C 主流編譯器為什麼不做成debug模式編譯的程式檢查陣列越界 溢位等錯誤,release模式編譯的程式不檢查?

看錯問題了 debug模式,VC可以檢查指向棧上物件的指標是否越界 對於new或者malloc出來的堆上的資料,就沒法判斷了 根源在於,C C 並沒有規範規定new或malloc出來的空間前後需要有什麼樣的標記,new甚至可以過載使得分配記憶體在自己預申請的空間內,或者這個空間甚至根本不是C C 系...

現代C C 編譯器有多智慧型?能做出什麼厲害的優化?

Xi Yang 弱爆了,連幫我把卷積自動 優化 成FFT加速的都做不到。另外,如果你寫 struct MyVec4i 使用處 MyVec4i v1 1,2,3,4 MyVec4i v2 5 6 7 8 MyVec4i result v1 v2 MSVC 我特麼就是要往記憶體裡放。 原子筆 我把裡面的...

新手 C 語言用什麼編譯器?

用個VS2013吧 掃地僧 新手的比較推薦簡單的IDE軟體,即可以快速上手使用程式設計,也可以讓你盡快的接觸C語言的程式設計邏輯實現。例如CFree 5,這款IDE既可以支援C語言編譯也可以直接支援C 編譯,主要優點是該軟體占用的空間相對較小。 拉盾 我初學時候,一開始機房裡是vc 6.0,所以也裝...