2010-04-20 17 views
2

你能給我一些C編譯器之間的比較,特別是在優化方面嗎?哪個免費的C編譯器提供更多優化選項?

+6

這是免費的,因爲在自由或免費的啤酒? – 2010-04-20 04:54:31

+0

看看[http://en.wikipedia.org/wiki/List_of_compilers#C_compilers](http://en.wikipedia.org/wiki/List_of_compilers#C_compilers) – 2010-04-20 06:56:00

回答

7

其實周圍並沒有太多免費的編譯器。 gcc是「免費」編譯器,可能是優化時最好的一種,即使與專有編譯器相比。

一些獨立的基準測試都是從這裏鏈接: http://gcc.gnu.org/benchmarks/

+0

有幾個C編譯器,'clang + llvm ','gcc','pcc','tcc'等等。 – dreamlax 2010-04-20 07:14:51

0

這是一個很難回答的問題,因爲你沒有告訴我們您所使用的平臺,無論是硬件還是操作系統....

但joemoe是對的,海灣合作委員會往往擅長這一領域。

(補充說明:在某些平臺上也有商業編譯器是更好的,但既然你獲得這麼多,只是編譯器GCC是很難被擊敗......)

+0

我正在使用intel x86處理器和fedora 11 – Naga 2010-04-20 05:12:56

+0

@Naga然後GCC是最終選擇 – qrdl 2010-04-20 07:07:45

+0

@Naga是的,gcc是使用Linux時的最終選擇。 – Johan 2010-04-20 12:39:06

0

Windows SDK的是免費下載。它包括當前版本的Visual C++編譯器。這些編譯器在優化方面做得非常好。

+2

請注意,免費的* Visual Studio Express *版本中的編譯器在優化時會故意殘廢。如果你想要微軟提供的相對較差的優化支持,你需要購買完整版本。 – 2010-04-20 07:11:49

+0

@Paul R:我知道當MS第一次啓動VS的Express版本(假設仍然是)時,_used_是真的。但是對於SDK中的編譯器來說是這樣嗎?不太確定它是...需要谷歌它:-) – SteelBytes 2010-04-20 14:05:18

+0

從http://blogs.msdn.com/windowssdk/「WinSDK v7.1版本中有什麼新東西?... VC++ 2010 RTM編譯器/ CRT改進了編譯性能和速度,這些都是Visual Studio 2010附帶的相同編譯器和工具集「 – SteelBytes 2010-04-20 14:10:06

1

我相信英特爾允許您在Linux下使用其ICC編譯器進行免費的非商業開發。當涉及到x86和x86-64的代碼生成時,ICC比gcc和Visual Studio更勝一籌(即它通常會生成更快的代碼,並且在某些情況下可以完成體面向量化(SIMD))。

+0

如果你詳細說明會更好。編譯時間更短,程序更快,代碼量更小等?在什麼基準上? – 2010-04-20 13:04:18

+0

@Matthew:注意到 - 我已經進一步認定答案。 – 2010-04-20 13:55:55