2.1 整形
作用:整形变量表示的是整数类型的数据
数据类型 | 占用空间 | 取值范围 |
short(短整型) | 2字节 | (-2*15~2*15-1)-32768~32767 |
int(整形) | 4字节 | (-2*31~2*31-1) |
long(长整型) | 4字节 | (-2*31~2*31-1) |
long long(长长整型) | 8字节 | (-2*63~2*63-1) |
取值范围就像一个钟表,超过最大或最小就会回去;
2.2 sizeof关键字
作用:可以统计数据类型所占内存的大小。
语法:sizeof(数据类型/变量)
//短整型 short
short num1 = 10;
//整形 int
int num2 = 10;
//长整型 long
long num3 = 10;
// 长长整形 long long
long long num4 = 10;
cout << "short所占用的内存空间为:" << sizeof(short) << endl;
cout << "int所占用的内存空间为:" << sizeof(int) << endl;
cout << "long所占用的内存空间为:" << sizeof(long) << endl;
cout << "long long所占用的内存空间为:" << sizeof(long long) << endl;
2.3 实型(浮点型)
1.单精度 float
2双精度 double
两者区别在于有效数字范围不同
数据类型 | 占用空间 | 有效数字 |
float | 4字节 | 7位有效数字 |
double | 8字节 | 15~16位有效数字 |
不定义情况下,系统默认小数位双精度double,一般在单精度小数后加f;
默认情况下 输出一个小数,会显示出6位有效数字;
科学记数法:float f2 = 3e2; // 表示 3 * 10 的2次方;
float f2 = 3e-2; // 表示 3 * 0.1 的2次方。
2.4 字符型
作用:字符型变量用于显示单个字符
语法:char ch = 'a';
注意:1、字符用单引号;2、单引号里边只能有一个字符,不能是字符串。
* C和C++中字符型变量只占用1个字节。
* 字符型变量并不是把字符本身放到内存中存储,而是将对应的ASCLL编码放到对应的存储单元中。
//1、字符型变量创建方式
char ch = 'a';
cout << ch << endl;
//2、字符型变量所占的内存空间
cout << "char字符型变量所占内存:" << sizeof(char) << endl;
//3、字符型变量对应的ascll编码
cout << (int)ch << endl;
2.5 转义字符
//转义字符
//换行符 \n
cout << "hello world\n";
//反斜杠 \\
cout << "\\" << endl;
//水平制表符 \t 可以整齐的输出字符,\t占八个字符
cout << "aaaa\thelloworld" << endl;
cout << "aa\thelloworld" << endl;
cout << "aaa\thelloworld" << endl;
2.6 字符串型
作用:表示一串字符
1、C风格字符串: char 变量名 [ ] = “字符串值”;
2、C++风格字符串:string 变量名 = “字符串值”
//1、C风格字符串
char str[] = "hello world";
cout << str << endl;
//2、C++风格字符串
string str2 = "hello world";
cout << str2 << endl; //要有头文件 #include<string>
注意用C++风格的时候,要包含头文件#include<string>
2.7 布尔类型
作用:布尔数据类型代表真或假的值
bool类型只有两个值:
*true --真(本质是1)
*false --假(本质是0)
bool类型占1个字节大小
//1、创建bool数据类型
bool flag = true;//true代表真
cout << flag << endl;
flag = false;
cout << flag << endl;//false代表假
//2、查看bool类型所占的数据类型
cout << "bool数据类型所占内存空间:" << sizeof(bool) << endl;
2.8 数据的输入
作用:用于从键盘获取数据
语法:cin >> 变量
//1、整形
int a = 0;
cout << "请给整型变量a赋值:" << endl;
cin >> a;
cout << "整型变量a的值为:" << a << endl;
//2、浮点型
float f = 3.14f;
cout << "请给浮点型变量f赋值:" << endl;
cin >> f;
cout << "浮点型变量f的值为:" << f << endl;
//3、字符型
char ch = 'a';
cout << "请给字符型变量ch赋值" << endl;
cin >> ch;
cout << "字符型变量ch的值为:" << ch << endl;
//4、字符串型
string str = "hello";
cout << "请给字符串 str赋值" << endl;
cin >> str;
cout << "字符串str:" << str << endl;
//5、布尔数据类型
bool flag = false;
cout << "请给布尔类型 flag 赋值" << endl;
cin >> flag; //bool类型 只要是非0得数都代表真;
cout << "布尔类型flag 值为:" << flag << endl;