多语言展示
当前在线:901今日阅读:60今日分享:41

C 应用程序性能优化方法

如题,C应用程序性能优化主要是针对代码的优化,这个需要比较好的基础和经验的积累,关于代码优化的文章和图书非常多,这里只发表一些自己积累的观点,大神请回避
工具/原料

C语言

方法/步骤
1

1、根据特定的使用环境,选择合适的数据结构,比如用于接收网络数据的消息队列用链接就比其它数据结构好,没有最好的数据结构,只有最合适的数据结构

2

2、能使用指针操作的尽量使用指针操作,一般来说,指针比较灵活简洁,对于大部分的编译器,使用指针生成的代码更短,执行效率更高。

3

3、递归调用尽量换成内循环或者查表解决,因为频繁的函数调用也是很浪费资源的

4

4、还是就是一些针对运算上的细节优化了,很多初学者是忽视了,具体是下面这些情况1)、求余、求2n方运算a=a%8; --》a=a&7; 原因是位操作只需一个指令周期即可完成2)、平方运算 a=pow(a, 2.0);--》 a=a*a; 原因是乘法运算比求平方运算快得多3)、用移位实现乘除法运算 a=a*4; ---》a=a<<2; b=b/4;---》b=b>>2; 原因是用移位的方法得到代码比调用乘除法子程序生成的代码效率高4)、避免不必要的整数除法int i, j, k, m;m = i / j / k;---》m = i / (j * k);原因是整数除法是整数运算中最慢的,所以应该尽可能避免5)、使用增量或减量操作符 x=x+1;--》++x; 原因是增量符语句比赋值语句更快6)、使用复合赋值表达式x+=1;能够生成高质量的程序代码7)、提取公共的子表达式float a, b, c, d, e, f;e = b * c / d;f = b / d * a;原因是减少重复的计算,虽然有些编译支持,但是也应该养成这种习惯其它就不一一列举了,有兴趣的自己可以深入了解下

5

5、其它还有很多,比如循环的优化、函数优化、公共执行代码的优化,变量的优化,内存操作优化,cpu使用优化等等,有好多细节的知识,平时要多多接触这方面的知识,慢慢积累,体验让代码效率提升毫秒级的快感吧

注意事项
1

仅供学习参考

2

如有错误,欢迎指正

推荐信息