C语言详解(4)控制语句的注意事项
2017-11-27 21:32
931 查看
使用控制语句的注意事项
关于C语言详解系列blog的目录:http://blog.csdn.net/snake_lp/article/details/78630717
一、概述
C程序的主体是有C语言的控制结构组成的。C语言中由顺序结构分支结构和循环结构组成。
二、顺序结构
顺序结构是由若干条顺序执行的语句构成的。
C语言是一种面向过程的程序设计语言,所以顺序结构是它的根本。我们在写代码的时候,需要注意语句的前后顺序。另外在任务型的架构中,需要了解程序执行的节拍,以确定代码段执行的先后。
顺序结构需要注意的就是程序执行的先后顺序。
三、分支结构
分支结构是由一个或者多个条件来确定所要指向的语句。
if语句需要注意的事项:
1. 变量或者表达式和常量比较时,将常量放置在等式的左边,这样的做法是为了防止手误,使得错误在编译中发现;
2. 如果使用int类型来表示布尔型的话,建议还是使用比较来进行,不要直接使用自定义的布尔类型。因为C中没有布尔类型,同时也不要理所当然的认为false就是0,true就是1;
3. float和double变量不能直接和0比较,需要定义精度;
4. 另外应该养成良好的习惯,if之后不管else是否有动作,都应该加上else并且类似于/*doing nothing*/的注释,这是因为现在很多行业要要求进行QAC的静态测试,规范要求不能省略else,这样的目的是要求程序员必须考虑else的情况;
switch语句需要注意的事项:
1. 需要考虑到条件的所有离散值;
2. 如果是数值段,并且段数很多,使用if太复杂的时候,结合宏以及枚举,将各个数值段转换成枚举来进行;
3. Case语句中的值只能是整型或者字符型;
4. 为了增加程序的可读性,case语句应该按照一定的顺序排列,同时default语句应该放在最后面;
5. 没有特殊情况,每个case语句分支必须要有break,防止语句分支的重叠;
6. 另外为了QAC的检查,不要生了default语句;
if语句主要用于数值段的情况进行判断;
if语句可以安全从功能上替代switch语句,但是switch语句无法代替if语句;
四、循环结构
循环结构是当满足某种循环条件时反复指向某一段程序,直到不满足循环条件为止。
while、for、do-while语句的区别:
1. do语句是先执行后判断,循环体至少会执行一次;
2. while语句是判断后执行,循环体有可能不执行;
3. for语句先判断后执行,相对于while显得更简洁;
4. for语句,禁止将第三个表达式放置在循环体中;
5. 另外在嵌入式开发中,使用循环结构需要特别注意,一定需要存在循环终止的条件,没有特殊要求,不应该出现死循环。因为嵌入式系统中,资源比较有限,进入死循环基本上就会出现死机的现象了。
关于C语言详解系列blog的目录:http://blog.csdn.net/snake_lp/article/details/78630717
一、概述
C程序的主体是有C语言的控制结构组成的。C语言中由顺序结构分支结构和循环结构组成。
二、顺序结构
顺序结构是由若干条顺序执行的语句构成的。
C语言是一种面向过程的程序设计语言,所以顺序结构是它的根本。我们在写代码的时候,需要注意语句的前后顺序。另外在任务型的架构中,需要了解程序执行的节拍,以确定代码段执行的先后。
顺序结构需要注意的就是程序执行的先后顺序。
三、分支结构
分支结构是由一个或者多个条件来确定所要指向的语句。
if语句需要注意的事项:
1. 变量或者表达式和常量比较时,将常量放置在等式的左边,这样的做法是为了防止手误,使得错误在编译中发现;
2. 如果使用int类型来表示布尔型的话,建议还是使用比较来进行,不要直接使用自定义的布尔类型。因为C中没有布尔类型,同时也不要理所当然的认为false就是0,true就是1;
3. float和double变量不能直接和0比较,需要定义精度;
4. 另外应该养成良好的习惯,if之后不管else是否有动作,都应该加上else并且类似于/*doing nothing*/的注释,这是因为现在很多行业要要求进行QAC的静态测试,规范要求不能省略else,这样的目的是要求程序员必须考虑else的情况;
switch语句需要注意的事项:
1. 需要考虑到条件的所有离散值;
2. 如果是数值段,并且段数很多,使用if太复杂的时候,结合宏以及枚举,将各个数值段转换成枚举来进行;
3. Case语句中的值只能是整型或者字符型;
4. 为了增加程序的可读性,case语句应该按照一定的顺序排列,同时default语句应该放在最后面;
5. 没有特殊情况,每个case语句分支必须要有break,防止语句分支的重叠;
6. 另外为了QAC的检查,不要生了default语句;
if语句主要用于数值段的情况进行判断;
if语句可以安全从功能上替代switch语句,但是switch语句无法代替if语句;
四、循环结构
循环结构是当满足某种循环条件时反复指向某一段程序,直到不满足循环条件为止。
while、for、do-while语句的区别:
1. do语句是先执行后判断,循环体至少会执行一次;
2. while语句是判断后执行,循环体有可能不执行;
3. for语句先判断后执行,相对于while显得更简洁;
4. for语句,禁止将第三个表达式放置在循环体中;
5. 另外在嵌入式开发中,使用循环结构需要特别注意,一定需要存在循环终止的条件,没有特殊要求,不应该出现死循环。因为嵌入式系统中,资源比较有限,进入死循环基本上就会出现死机的现象了。
相关文章推荐
- python学习之路-第二天-常见的注意事项(代码风格、运算符、优先级、控制语句)
- mybaits where 语句中使用<if></if>注意事项
- 在使用service测试类的时候需要在控制台中打印信息提示,然后在进行controller层进行使用需要注意事项
- Java之访问权限控制符以及结合继承体系引发的注意事项
- 在CBO下写SQL语句的注意事项
- switch case default 语句的的使用以及注意事项
- 编写高性能的SQL语句注意事项
- 关于case语句中声明变量并初始化的注意事项
- 条件语句“&&”和“||”的使用注意事项
- taskctl条件控制策略中时间窗口注意事项
- 有关插入语句的注意事项
- Hql语句注意事项总结
- Hql语句注意事项总结
- Hiberate和sql语句注意事项(续)
- HttpServletResponse response(中文乱码、文件下载、定时刷新、控制缓存、重定向、注意事项)
- shell笔记(四)——if语句需要注意的事项
- Delphi 2010学习笔记(16)---流程控制的注意事项---2011-01-21
- ADO.NET访问ACCESS数据库是SQL语句的通配符使用注意事项
- Switch语句注意事项
- Sql建表和sql语句的注意事项