【Linux C】第二章 控制结构
来源:互联网 发布:mac wmv用什么播放器 编辑:程序博客网 时间:2024/05/13 12:20
本章内容中比较精华的是在goto小节中的出错处理模型。以及每个小节中各种结构语句的伪代码表示。通过伪代码可以体会到该语句在解释为汇编后的执行流程。
1. Goto语句
a) Goto语句在出错处理中的应用。出错处理的模型核心是:释放资源的顺序与申请资源的顺序相反。
2. 分支结构
3. 短路计算(&&与||) 汇编中被翻译为连续执行的若干跳转。
4. 循环结构:while与do while的区别。此处可以对比以前电机程序中,采样判断手柄初始值并循环采样防飞车是,自己用while而没用do while,导致多了几句。
5. Switch语句。伪代码中用标号数组,与if else多次比较在执行效率上形成鲜明对比。
switch(score){case A: case B: } 被译为 score= xx goto label[score] lab[A]: xxxxx lab[B]:xxxxx 区别于if else的多次判断。
6. 优化控制结构
a) 操作执行速度:加减法(1个时钟周期)<移位<乘运算(5-6)<除(50时钟周期)。
b) 所有乘法可以用移位代替 2的n次幂除法可以用移位代替。
c) 使用数学公式eg.高斯公式求和。
d) 存储问题: x=x+1与x+=1 执行效率的区别(减少内存读取)。
e) 循环优化:循环中一次性计算问题,应当放在循环外。eg:for(i=0;i<strlen(p);i++), 避免每次循环重复无谓运算。
- 【Linux C】第二章 控制结构
- C语言之路 第二章 判断控制结构
- 第二章 控制结构和函数
- 第二课 控制结构
- 【Oracle强化】②第二章 编写控制结构
- scala学习第二章 控制结构与函数
- 第七章 第二节 多分支控制结构
- C语言控制结构
- C语言控制结构
- LINUX SHELL控制结构
- 第二天-运算符、控制结构
- PYTHON第二讲:输入基本控制结构
- Linux C编程一站式学习第二章
- C 语言中的控制结构
- 05.C语言控制结构
- C语言控制结构 练习题
- C#:流程控制:循环结构
- 【C】控制结构和语句
- 谁是你随时可以说话的人
- 调用模板类的模板成员函数的问题
- Flex 界面设计
- 第一次开始写博客
- PostgreSQL 存储过程
- 【Linux C】第二章 控制结构
- SEO优化不是内容和外链
- Windows的字体LOGFONT
- 一起学习水晶报表之拉模式【Winform中实现报表显示数据】(课程4)
- 正则表达式
- 无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorer、Windows服务器管理工具或NET START命令启动它
- 【题解】[nyoj509]因子和阶乘
- Poj 3687 Labeling Balls[拓扑排序]
- java中的异常机制