目录
第二章 数据的存储、表示形式和基本运算
2.1C++的数据类型
1.基本类型
①整型
·短整型(short int)
·整型(int)
·长整型(long int)
②字符型(char)
③浮点型
·单精度型(float)
·双精度型(double)
·长双精度型(long double)
④布尔型(bool)
2.派生类型
①指针类型(*)
②枚举类型(enum)
③数组类型([ ])
④结构体类型(struct)
⑤共用体类型(union)
⑥类类型(class)
3.空类型(void)
C++并没有统一规定各数据类型的精度、数值范围和在内存中所占的字节数,各种C++编译系统根据自己的情况做出安排。下表列出了Visual C++数值型和字符型数据的情况
类型 | 类型标识符 | 字节数 | 数值范围 |
整型 | [signed] int | 4 | -2147483648~+2147483647 |
无符号整型 | unsigned [int] | 4 | 0~4294967295 |
短整型 | short [int] | 2 | -32768~+32768 |
无符号短整型 | unsigned short [int] | 2 | 0~65535 |
长整型 | long [int] | 4 | -2147483648~+2147483647 |
无符号长整形 | unsigned long [int] | 4 | 0~4294967295 |
字符型 | [signed] char | 1 | -128~+127 |
无符号字符型 | unsigned char | 1 | 0~255 |
单精度型 | float | 4 | 3.4×10**-38~3.4×10**38 |
双精度型 | double | 8 | 1.7×10**-308~1.7×10**308 |
长双精度型 | long double | 8 | 1.7×10**-308~1.7×10**308 |
注:
(1)sizeof(short)<sizeof(int)<sizeof(long)
(2)在整型符号int和字符型符号char的前面,可以加修饰符signed(表示“有符号”)或unsigned(表示“无符号”)。而浮点数不区分符号。
2.2常量
2.2.1什么是常量
2.2.2数值常量
1.整型常量(整数)的类型
一个整型常量可以用2种不同的方式表示:
①十进制整数:如1357,-432,0等。
②八进制整数:在常数的开头加上一个数字0,就表示这是八进制数形式表示的常数。如020表示八进制数20,相当于十进制数16。
③十六进制整数:在常数的开头加上你一个数字0和一个英文字母X(或x),就表示这是以十六进制数形式表示的常数。如0X20表示这是十六进制数20,它相当于十进制数32。
④二进制整数:在常数的开头加上你一个数字0和一个英文字母b
2.浮点数的表示方法
(1)十进制小数形式,如21.456,-7.98等。如果在实数的数字之后加字幕F或f,表示此数为单精度浮点数,如1234F,-43f,占4个字节。
(2)指数形式(即浮点形式):
其一般形式为:数符 数字部分 指数部分
2.2.3 字符常量
1.普通的字符常量
①字符常量值包括一个字符,如'AB'是不合法的
②字符常量区分大小写字母,如'A'和'a'是两个不同的字符常量
③撇号(')是定界符,而不属于字符常量的一部分。
如 cout<<'a'输出的是一个字母“a”,而不是三个字母“'a'”
④不同于Python和其他语言,C++中的字符常量只能用单引号,双引号是用来表示字符串的。
2.转义字符常量