C语言程序设计(第2章数据类型、运算符和表达式)
2.1 C语言数据类型
2.2常量和变量
2.2.1标识符命名
2.2.2常量
2.2.3变量
2.3整数数据
2.3.1整数Br/] 2.4.1实数常量
2.4.2实数变量
2.5字符数据
2.5.1字符常量
2.5虽然这些类型数据的长度和范围会随着处理器的类型和C语言编译器的实现而变化,但以b i t为例,整数等于C P U的字长,一个字符通常是一个字节。浮点值的确切格式取决于实现。对于大多数微型计算机,表2-1给出了五种数据的长度和范围。
表2-1基本类型的字长和范围
type(bit)range
char(character type)80 ~ 255
int(integer type)16-32768 ~ 32767
float(single precision type)32精确到6位数
double(double precision type)62。
表中长度和范围的值假设CPU的字长为16位。
C语言还提供了几种聚合类型,包括数组、指针、结构、社区(union)、位字段和枚举。这些复杂类型将在后面的章节中讨论。
除了void类型之外,基本类型前面还可以有各种修饰符。修饰语用于改变基本类型的含义,以便更准确地满足各种情况的需要。修饰符如下:
& # 8226;已签署(已签署)。
& # 8226;无符号(Unsigned)。
& # 8226;Long(长字符)。
& # 8226;短(短字符)。
修饰符signed、short、long和unsigned适用于字符和整数两种基本类型,而long也可以用于double(注意,因为long float与double的含义相同,ANSI标准去掉了多余的long float)。
表2-2给出了根据ANSI标准的所有组合的类型、字宽和范围。记住,在计算机字长大于1 6位的系统中,短整型和有符号字符可能不同。
表2-2 ANSI标准中的数据类型
Type (bit) range
char(字符类型8ASCII字符
unsigned char(无符号字符80~255
有符号字符(有符号字符类型)8-128~127
int(整数)16-32768)无符号int(无符号整数)160 ~ 65535
有符号int(有符号整数)16与int
short(短整数)8-128~127 [ 无符号长整型(unsigned long int)32 0 ~ 4294967296
float(单精度)32精确到6位
double(双精度)64精确到12位。
*表中的长度和范围值假设CPU的字长为16位。
因为整数的默认定义是一个有符号的数,所以“singed”的用法是多余的,但仍然是允许的。一些实现允许无符号用于浮点类型,例如无符号双精度。但是,这种用法降低了程序的可移植性,所以一般不推荐使用。
为了使用方便,C编译器允许整数的简称:
& # 8226;Short int缩写为Short。
& # 8226;Long int缩写为Long。
& # 8226;Unsigned short int缩写为Unsigned short。
& # 8226;Unsigned int缩写为Unsigned。
& # 8226;Unsigned long int缩写为Unsigned long。
也就是可以默认int。
2.2常量和变量
2.2.1标识符命名
在C语言中,标识符是变量、函数标签和其他用户自定义对象的名称。标识符的长度可以是一个或多个字符。在大多数情况下,标识符的第一个字符必须是字母或下划线,后面的字符必须是字母、数字或下划线(一些C语言编译器可能不允许下划线作为标识符的起始字符)。
以下是一些正确或错误的标识符命名示例。
正确形式错误形式
计数2计数
0条评论