1:C语言数据类型
C99标准中,数据类型有5类,分别是基本数据类型、构造数据类型、指针类型、空类型及新增加的_Bool类型。
1.1基本数据类型
基本数据类型的主要特点是它的值不可以再分解为其他类型,一般来说C语言的基本数据类型包括下面4种:
(1)整型
(2)实型
(3)字符类型
(4)枚举类型
1.1.2整数类型
整型数据可分为一般整型、短整型和长整型3种,其中:
(1)一搬整型:用int表示;
(2)短整型:用short int或short表示;
(3)长整型:用long int或long表示;
整型又分为有符号类型和无符号类型,无符号类型在类型符号加上unsigned即可。
1.1.2实数类型
实型数据又称为浮点型数据,实型可分为单精度型和双精度型两种,其中:
(1)单精度型:用float表示;
(2)双精度型:用double表示;
(3)长双精度型:用long double表示;
1.1.3字符类型
字符类型数据表示符用char表示,不管在任何计算机系统中,它都在内存中占一个字节
字符类型可分为下面3种:
(1)字符型:用char表示,取值范围-128~127;
(2)带符号字符型:用signed char表示,取值范围-128~127;
()无符号字符型:用unsigned char表示,取值范围0~255;
1.1.4枚举类型
在枚举类型的定义中一一列举出所有可能的取值,枚举类型量的取值不能超过它定义的范围。
枚举类型定义的一般形式为:
enum 枚举类型名{枚举列值表};
在枚举列表中列出所有可用值,这些值称为枚举元素。枚举类型是一种基本数据类型,不是构造类型,因为他不能再分解为其他基本类型。和结构体相似,定义了枚举类型之后,编译系统不为其分配相应的内存空间,职位定义的枚举变量分配空间。
枚举变量的声明:
例如:
enum weekday{sun,mon,tue,wed,thu,fri,sat}day1,day2; //定义变量同时声明变量
或者
enum weekday{sun,mon,tue,wed,thu,fri,sat}; //定义类型
enum weekday day1,day2; //声明该类型的变量
或者
enum {sun,mon,tue,wed,thu,fri,sat}day1,day2; //直接声明变量
针对枚举类型的几点说明:
(1)enum是关键字,标识枚举类型,定义枚举类型必须以enum开头
(2)枚举元素是常量,不是变量。不能在程序中用赋值语句在对他赋值
(3)可以在定义类型时对枚举常量指定一个整型值
(4)枚举常量可以进行比较
(5)可以将枚举常量赋值给一个枚举变量,但不能将一个整数赋给它。
例如:
day1=mon; //正确
day1=1; //错误
(6)枚举常量不是字符串。
1.2构造类型
构造数据类型:构造数据类型是根据已定义的一个或多个数据类型用构造的方法来定义。也就是说,一个构造类型的值可以分解成若干个“成员”或者“元素”,每个“成员”都是一个基本数据类型或又是一个构造类型。在C语言中,构造类型有以下几种:
(1)数组类型
(2)结构体类型
(3)共用体(联合)类型
1.2.1数组类型