Linux C基本要素

一:C代码规范

1. 标识符的命名

  标识符指的是程序的函数名和变量名,C语言对标识符命名的限制如下:

   (1)只能包含数字,字母以及下划线,不能包含其他任何特殊字符

   (2)只能以字母或者下划线开头

   (3)不能与系统已有的关键字重名,也不能与本命名空间中具有相同作用域的其他标识符重名

  C语言也有自己的命名空间(namespace),但相对于C++而言简单多了,实际上在一个C程序中,所有的标识符处在4个命名空间的其中一个。这4个命名空间有:

    (1)所有的结构体,联合体,枚举列表的标签名

    (2)每一个结构体,联合体内部的成员列表

    (3)goto语句的标签符

    (4)其他

  例如:

  

    

2. 缩进

  缩进从语法角度上讲无关紧要,但对于程序的可读性和可维护性而言,无疑是重中之重。例如:、    

     

    缩进时,最好用8个空格缩进,避免用4个空格甚至两个空格,如果厌烦缩进要敲很多空格,当然可以用<Tab>来代替,但代价是代码最好不要多款不同的编译器来回编辑,因为不同的编译器的制表符所代表的空格数可能不一致。我们有几种办法来避免:

   (1)统一用恒定的空格缩进;

   (2)不要在不同的编译器中”倒腾“程序

   (3)切换编译器时设置编译器的选项,使他们的制表符代表的空格数相等。

 3. 空行和空格

  空行和空格也是提高程序可读性的很重要的一方面,因此适当的空格和空行将程序看起来更加清晰。什么时候需要使用空格和空行将不用的标识符和不同代码隔开,并没有统一的说法。可以借鉴:

  再赋值,比较,逻辑操作等运算符中,用空格符将操作数隔开,在标点符号后面也用空格隔开。

4. 括号

  函数体和循环结构,分支结构等代码需要使用花括号将其代码括起来,对于函数而言,在Linux编码风格,左右花括号分别占一行,在其他代码块中,左花括号可以放在上一行最右边,右花括号单独占一行。

5. 注释

  第一,用形式/* ………*/的方式书写注释,被这一对正斜杠和星号包围的内容将视为注释语句,这是C语言注释语句的传统编写方式,它有两个他特点:一是不能嵌套,二是可以多行注释。

  第二,用刑如//……的方式书写注释,这是C++风格的注释,这种方式只能注释一行。

二:基本类型

1. 布尔类型

  C语言中有一类只有两种可能的取值:真或者假。这就是布尔类型。

  在C语言中可以用_Bool或者bool定义布尔类型,当使用关键字bool定义变量时候,需要包含头文件<stdbool.h>,包含了这个文件之后还可以使用系统预定义的布尔常量true和false,例如定义一个布尔变量:

  bool flag;  //或者_Bool flag

  在C语言中,一般用1表示true,0表示false,因此布尔类型其实就是一个整数类型,只是原则上它仅仅需要1位来进行储存。因为对于0和1而言,1位储存空间就足够了,实际上bool变量占用一个字节,而true和false占用四个字节(他们实际上都是int类型)

  

  

 2. 整数数据

  

   显然,对于某一种特定的整数类型都有其表示的范围,超出范围的数值将无法正常储存,这种情况称为溢出。当有符号短整数变量short m=32767,如果让m再加1,则在储存器上不可能储存32768,而是回到最小值-32768.

  由这些基本的数据类型关键字定义出来的变量的长度,在不同的平台下可能不同,如果我们程序需要在不同的平台移植

猜你喜欢

转载自www.cnblogs.com/eokey/p/11776206.html