我正在寻找程序员在 C 中可以做什么,这可以确定生成的目标文件的性能和/或大小。
例如,
1. 将简单的 get/set 函数声明为内联可能会提高性能(以更大的占用空间为代价)
2. 对于不使用循环变量本身的值的循环,倒数到零而不是数到某个值等
看起来编译器现在已经发展到根本不需要“简单”技巧(如上面两点)的水平。Appropriate options during compilation do the job anyway. 哎呀,我还在这里看到了关于编译器如何处理递归的帖子——这非常有趣!那么我们在 C 级别还剩下什么要做呢?:)
我的具体环境是:GCC 4.3.3 re-targeted for ARM architecture (v4)。但是也欢迎对其他编译器/处理器的响应,并将被咀嚼。
PS:我的这种方法违背了通常的“代码优先!,然后是基准测试,最后是优化”的方法。
编辑:就像它发生的那样,我在发布问题后发现了一个类似的帖子:我们是否仍然应该“在小范围内”进行优化?