您的位置:首页 > 编程语言 > C语言/C++

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.      另外在嵌入式开发中,使用循环结构需要特别注意,一定需要存在循环终止的条件,没有特殊要求,不应该出现死循环。因为嵌入式系统中,资源比较有限,进入死循环基本上就会出现死机的现象了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息