基本类型:
整型:
短整型: short int
整型: int
长整型:long int
字符型:char(分为有符号和无符号,默认有符号)
浮点型:单精度型:float
双精度型:double
长双精度型:long double
布尔型 bool
派生类型:
指针类型(*)
枚举类型(enum)
数组类型([])
结构体类型(struct)
共用体类型(union)
类类型(class)
空类型(void)
引用类型 & 地址的引用
string s = "helloworld";
string& s1 = s;//s1和s一样
布尔型就是逻辑型,空类型就是无值型。
说明:
(1) 整型数据分为长整型(long [int])、一般整型(int)和短整型(short [int]),Visual C++6.0整型占4个字节。
(2) 在整型符号int和字符型符号char的前面,可以加修饰符signed(表示“有符号”)或unsigned(表示“无符号”)。
若指定为signed,则数值以补码形式存放,存储单元中的最高位用来表示数值的符号。若指定为unsigned,则数值没有符号,全部二进制位都用来表示数值。
由此可见,有符号短整型,能存储的最大值为215-1,即32767,最小值为 -215,即-32768。
无符号段整型,能存储的最大值为216-1,即65535,最小值为0。有些数据若没有负值的,可以使用unsigned,它存储正数的范围比用signed时要大一倍。
(3) 浮点型(又称实型)数据分为单精度(float)、双精度(double)和长双精度(longdouble)3种,在Visual C++ 6.0中,float提供6位有效数字,double提供15位有效数字,并且float和double的数值范围不同。对float分配4个字节,对double分配8个字节。
(4) 基本类型中还有一个布尔型(bool),在内存中占一个字节,其值为True(1)或False(0)。
非0整数可以隐式转换成true,0转换成false。
类型 | 类型标识符 | 字节 | 表示数值范围 | 备注 |
整型 | [signed] int | 2* | -32768~32767 | -2^15 ~ (2^15 -1) |
无符号整型 | unsigned [int] | 2* | 0~65535 (Turbo C++3.0*) | 0 ~ (2^16 -1) |
短整型 | short [int] | 2 | -32768~32767 | -2^15 ~ (2^15 -1) |
无符号短整型 | unsigned short [int] | 2 | 0~65535 | 0 ~ (2^16 -1) |
长整型 | long [int] | 4 | -2147483648~2147483647 | -2^31 ~ (2^31 -1) |
无符号长整型 | unsigned long [int] | 4 | 0~4294967295 | 0 ~ (2^32 -1) |
单精度型 | float | 4 | -3.4×1038 ~ 3.4×1038 | 6、7 位有效数字 |
双精度型 | double | 8 | -1.7×10308 ~ 3.4×10308 | 15、12位有效数字 |
长双精度型 | long double | 12* | -3.4×104932 ~ 3.4×104932 | 15、19位有效数字 |
字符型 | [signed] char | 1 | -128~127 | -2^7 ~ (2^7 -1) |
无符号字符型 | unsigned char | 1 | 0~255 | 0 ~ (2^8 -1) |
上一次遗留的问题,命名空间的作用,是为了解决命名冲突的问题,using namespace是声明要使用的命名空间,这样下面的代码就不必写:空间名::这样的代码了。