【发布时间】:2016-11-19 13:33:08
【问题描述】:
如果我用 MinGW 编译 C hello world,生成的 exe 是 42Kb。如果我使用 Tiny C 编译器,我会得到 2Kb。 (在这两种情况下都没有指定任何选项或做任何有趣的事情,只需 gcc hello.c -o hello.exe)
现在我知道需要最少的启动代码;但是 mingw 放在那里的额外 40kb 的东西是什么,它有什么作用,为什么需要它?
【问题讨论】:
-
你的只有 42KB,这个更大 93.7KB(不是 Kb 是千/千比特)Why would a C executable be smaller when compared to C++ executable。如果你[用
-O2/-O3/-Os编译,大小会大大减小](Why is a C++ Hello World binary larger than the equivalent C binary?),因为很多未使用的部分都被删除了