C代码的效率更高?

时间:2010-09-23 15:19:15

标签: c performance

使用我正在使用的C代码更有效率,将我的代码移动到现有的C程序中还是有一个h文件#included以便它调用单独的.c文件?

当它被编译成.exe时,如果将它合并到原始代码中而不是具有h文件和单独的.c文件,它是如何工作的?

我不确定该程序有多少行代码,我将其他代码合并到其中,但我的代码只有大约一千行代码。

谢谢, DemiSheep

2 个答案:

答案 0 :(得分:9)

将代码保存在单个.c文件或链接到同一个可执行文件的多个.c文件之间的效率没有区别,因为一旦创建了可执行文件,它可能会包含相同的二进制文件代码选择哪种方法。当然,这可以通过二进制反汇编程序轻松验证。

单个.c文件可以更改的是编译的速度,对于单个文件而言,这可能比一堆文件更快必须链接在一起的文件。 IIRC,SQLite首选的源代码分发方法之一是单个巨大的“合并C文件”,是编译速度。


那就是说,你真的不应该关心这类问题。 程序分解为单独的模块,每个模块都有一个干净的界面和一个单独的实现文件。

答案 1 :(得分:0)

我知道这已经有一个很好的答案,说没有区别,但想添加这个

  

#include指令告诉你   预处理器来处理内容   就像那些内容一样,指定文件   曾出现在源程序中   指令出现的点。

我会自己写的,但是msdn docs说得很好。