当前位置:嗨网首页>书籍在线阅读

05-数据_数据类型关键字

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

3.3 数据:数据类型关键字

不仅变量和常量不同,不同的数据类型之间也有差异。一些数据类型表示数字,一些数据类型表示字母(更普遍地说是字符)。C通过识别一些基本的数据类型来区分和使用这些不同的数据类型。如果数据是常量,编译器一般通过用户书写的形式来识别类型(如,42是整数,42.100是浮点数)。但是,对变量而言,要在声明时指定其类型。稍后会详细介绍如何声明变量。现在,我们先来了解一下C语言的基本类型关键字。K&R C给出了7个与类型相关的关键字。C90标准添加了2个关键字,C99标准又添加了3个关键字(见表3.1)。

表3.1 C语言的数据类型关键字

| 最初 K&R 给出的关键字 | C90 标准添加的关键字 | C99 标准添加的关键字 | | :----- | :----- | :----- | :----- | :----- | | int | signed | _Bool | | long | void | _Complex | | short | | _Imaginary | | unsigned | | char | | float | | double |

在C语言中,用 int 关键字来表示基本的整数类型。后 3 个关键字( longshortunsigned )和 C90 新增的 signed 用于提供基本整数类型的变式,例如 unsigned short intlong long intchar 关键字用于指定字母和其他字符(如, #$%* )。另外, char 类型也可以表示较小的整数。 floatdoublelong double 表示带小数点的数。 _Bool 类型表示布尔值( truefalse ), _Complex_Imaginary 分别表示复数和虚数。

通过这些关键字创建的类型,按计算机的存储方式可分为两大基本类型:整数类型和浮点数类型。

位、字节和字

位、字节和字是描述计算机数据单元或存储单元的术语。这里主要指存储单元。

最小的存储单元是位(bit),可以存储0或1(或者说,位用于设置“开”或“关”)。虽然1位存储的信息有限,但是计算机中位的数量十分庞大。位是计算机内存的基本构建块。

字节(byte)是常用的计算机存储单位。对于几乎所有的机器,1字节均为8位。这是字节的标准定义,至少在衡量存储单位时是这样(但是,C语言对此有不同的定义,请参阅本章3.4.3节)。既然1位可以表示0或1,那么8位字节就有256(2的8次方)种可能的0、1的组合。通过二进制编码(仅用0和1便可表示数字),便可表示0~255的整数或一组字符(第15章将详细讨论二进制编码,如果感兴趣可以现在浏览一下该章的内容)。

字(word)是设计计算机时给定的自然存储单位。对于8位的微型计算机(如,最初的苹果机),1个字长只有8位。从那以后,个人计算机字长增至16位、32位,直到目前的64位。计算机的字长越大,其数据转移越快,允许的内存访问也更多。