2010-12-13 53 views
1

最近我一直在使用Windows API,試圖編寫儘可能小的基於gui的Windows程序。速度對我來說並不是什麼大問題,我要做的是可執行文件的大小。哪個C編譯器生成最小的本機Windows可執行文件?

只是想知道哪個C編譯器會產生最小的二進制文件,特別是沒有任何技巧或太多的混亂。

+0

這是不可能的,沒有實際*建立你的程序*。每個程序都會有所不同。嘗試一些編譯器並找出答案。 – 2010-12-13 21:20:39

回答

3

我在Windows上沒有太多的經驗,但Tiny C Compiler確實會產生一些非常小的可執行文件。

我在一個基本的「Hello world」程序上測試過它,exe的大小是1.5KB,大約是MinGW可執行文件大小的1/12。我沒有用Visual C++測試它(因爲我沒有它),但你明白了。它使小型可執行文件。

1

查找可執行文件壓縮(例如UPX)。這會讓你遠遠超過任何編譯器,代價是偶爾會有病毒掃描器的誤報。

+0

是的,我一直在使用UPX。我想知道天氣還是不行,我可以通過切換到另一個編譯器來進一步縮小可執行文件的大小。順便說一下,我正在使用Visual Studio。 – 2010-12-13 21:27:19

+1

關於壓縮的一點是,如果算法很好(而且UPX應該相當不錯),那麼受限於實際的信息,而不是輸入的限制。在某一點上,你不能將n比特的信息塞入n-1比特。 – 2010-12-13 21:28:49

相關問題