关于C语言优化
2014-01-04 14:21
190 查看
前几天看网上新闻,有人建议把编程纳入高考,且不论是否靠谱,却至少说明一件事:会写点程序不再有什么可炫耀的,将来更有可能成为全民普及技能。其实即使现在,很多人写程序的兴奋感还没消退,就悲哀地发现自己程序写得蹩脚,反倒成为了周围人的笑料。
一群搞技术的人在一起,能脱颖而出的往往不是代码写得快的那个,而是对技术理解深且能在关键时刻分析解决问题的。掌握一些C语言优化知识,能增强这方面的气场和底气,从而尽快从受气的小媳妇进化成有资格对别人的程序指手划脚的婆婆。
有人总结程序开发三步曲“Make it run , make it right , make it fast”。先能跑,其次正确,最后要跑得快。嵌入式系统资源相对受限,编程水平的差异体现得更明显。功能相似的嵌入式软件,不同的优化水平常常直接决定最终成败。所以嵌入式开发中掌握基本的代码优化技巧很有必要。
优化是相对高级的领域,分很多层次,比如改进算法、逻辑层优化;C语言实现级的优化;针对特定硬件平台的汇编及专门指令优化等。这里介绍语言级的优化,主要为加深对C的理解。
另外优化时要保持头脑清醒,提高优化的性价比:
a. 过早进行语法级优化是浪费。
b. 优化要抓大放小,以结果而不是个人兴趣为导向。
c. 达到优化目标要马上抽身退出,不能过于沉迷。
d. 优化不能作为代码可读性差的借口,可读性是基础。
一群搞技术的人在一起,能脱颖而出的往往不是代码写得快的那个,而是对技术理解深且能在关键时刻分析解决问题的。掌握一些C语言优化知识,能增强这方面的气场和底气,从而尽快从受气的小媳妇进化成有资格对别人的程序指手划脚的婆婆。
有人总结程序开发三步曲“Make it run , make it right , make it fast”。先能跑,其次正确,最后要跑得快。嵌入式系统资源相对受限,编程水平的差异体现得更明显。功能相似的嵌入式软件,不同的优化水平常常直接决定最终成败。所以嵌入式开发中掌握基本的代码优化技巧很有必要。
优化是相对高级的领域,分很多层次,比如改进算法、逻辑层优化;C语言实现级的优化;针对特定硬件平台的汇编及专门指令优化等。这里介绍语言级的优化,主要为加深对C的理解。
另外优化时要保持头脑清醒,提高优化的性价比:
a. 过早进行语法级优化是浪费。
b. 优化要抓大放小,以结果而不是个人兴趣为导向。
c. 达到优化目标要马上抽身退出,不能过于沉迷。
d. 优化不能作为代码可读性差的借口,可读性是基础。
相关文章推荐
- c/c++常用算法(11) -- 基本排序算法(插入排序)
- C++经典面试题
- C++ 06 继承与组合 (has-a is-a) 以及类大小的计算 虚基类对内存模型的影响(不考虑虚函数)
- 如何找出g++编译时的系统头文件的搜索路径
- C/C++返回内部静态成员的陷阱(inet_ntoa)
- 控制台程序暂停
- C++中的static关键字
- 关于C++中的友元函数的总结
- 在C#调用C++的DLL简析(一)——生成非托管dll
- c语言中%X是什么意思
- 彻底解密C++宽字符,C++国际化策略解析
- C/C++面试题及答案
- C/C++二维数组作为函数参数传递
- 线程实现定时器(windows下C++版)
- c++半年心得
- C++空类sizeof不为0
- 不要对C++类对象或struct对象做memset操作
- c++ class forward declaration and invalid use of incomplete type
- C运行时库(C Run-time Library)详解
- C语言 scanf 总结