上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.1.1 基本数据类型
基本数据类型是C++编译系统内置的,见表2.1。
表2.1 C++的基本数据类型(VC 6.0编译环境)
从表2-1中可以看到,C++的基本数据类型有bool(布尔型)、char(字符型)、int(整型)、float(浮点型)和double(双精度型)。其中关键字signed和unsigned,以及short和long被称为修饰符。
用short修饰int时,即short int表示短整型,占2字节,此时int可以省略,因此表2-1中列出的是short型而不是short int型。long可以用来修饰int和double,用long修饰int时,long int表示长整型,占4字节,同样此时int可以省略。从表2-1中可以看到,int和long型所占的字节数是一样的,为什么语法中需要规定两种不同的数据类型呢?这是因为,不同的编译环境对int型数据所占的字节数规定不同,而short和long型的字节数是固定的,所以,如果要编写可移植性好的程序,应将整型数据定义为short型或long型。
signed和unsigned可以用来修饰char型和int型,signed表示有符号数,unsigned表示无符号数。有符号整数在计算机内是以二进制补码形式存储的,其最高位为符号位,“0”表示“正”,“1”表示“负”。无符号整数只能是正数,在计算机内是以该数的绝对值形式存放的。char型和int型在默认(不加修饰)情况下是有符号(signed)的。
bool型(布尔型,也称逻辑型)数据的取值只能是false(假)或true(真)。在VC++6.0编译环境中,bool型数据占1字节。