Welcome

首页 / 软件开发 / 数据结构与算法 / 提前认识软件开发(9) C语言中的大括号

提前认识软件开发(9) C语言中的大括号2015-01-24在C语言中,大括号“{}”是一类比较特殊的符号。如果能够在适当的地方利用它,可使代码看起来非常的整洁,也能够从侧面体现出一个编程人员的专业修养。

那么,在C语言中,大括号应该用在哪些地方呢?

1.初始化数组变量

在实际的软件开发项目中,变量在使用前应初始化,防止未经初始化的变量被引用。

对于数组变量来说,恰当的初始化样例如下:

char szString[100] = {0};

定义了一个名为szString的包含100个字节的数组变量,并将该数组中每个变量的初始值赋为0。

2. 定义和初始化结构体变量

结构体变量的定义方法的样例如下:

typedef struct

{

   ……

}T_Struct;

该结构体变量的初始化样例如下:

T_Struct tStruct = {0};

很多开发人员都不注重对结构体变量进行初始化,这是不对的。要牢记的是,任何变量在使用前,都应进行初始化。

3. 用在if、else、else if、for、while、do等语句中

在实际的软件开发项目中,if、else、else if、for、while、do等语句用得较多,对这些语句的书写要求如下:

(1)自占一行,执行语句不得紧跟其后。不论执行语句有多少都要加“{ }”。

这样做的目的是便于阅读,同时也有利于代码的维护。

假设定义了两个整型变量iIntVal1和iIntVal2,如果iIntVal1的值小于iIntVa2,那么就将iIntVal2的值赋给iIntVal1,则正反示例为:

反例:

if (iIntVal1 < iIntVal2) iIntVal1 = iIntVal2;

这样写出来的程序可读性很差,不利于对流程的跟踪及对版本的维护。

正例:

if (iIntVal1 < iIntVal2)

{

  iIntVal1 = iIntVal2;

}

该代码和反例中的代码相比,简洁清晰,让人一目了然。

(2)程序的分界符“{”和“}”应独占一行并且位于同一列,同时与引用它们的语句左对齐。“{ }”之内的代码块使用缩进规则对齐(一般缩进4个空格)。

同样以两个整型变量iIntVal1和iIntVal2的比较来说明,正例如上面(1)所示。

反例:

if (iIntVal1 < iIntVal2)

   {

iIntVal1 = iIntVal2;

}

该代码看起来给人一种很凌乱的感觉,不便于阅读和维护。

4. 用在switch语句中

switch语句也经常出现在产品代码中,要想写出逻辑清晰、可阅读性强的switch语句,需要遵循以下规则:

(1)一定要加上default分支,即使case分支已经将全部情况都包括了。

这样做是为了防止其它代码阅读者误以为漏写了default分支,也可表现出开发人员的思维的全面性。