C++规定在创建一个变量或者常量的时候,必须指定出相应的数据类型,否则无法给变量分配内存
数据类型存在意义:给变量分配合适的内存空间
2.1 整型
作用:整型变量表示的是整数类型的数据
C++中能够表示整型的类型有以下几种方式,区别在于所占内存空间不同:
数据类型 | 占用空间 | 取值范围 |
---|---|---|
short | 2字节 | (-2^15^~2^15^-1) |
int | 4字节 | (-2^31^~2^31^-1) |
long | Windows为4字节,Linux为4字节(32位)8字节(64位) | (-2^31^~2^31^-1) |
long long | 8字节 | (-2^63^~2^63^-1) |
#include<iostream> using namespace std; int main(){ //短整形(-32768~32767) short num1 = 10; //short num1 = 32768时,输出-32768 //整型 int num2 = 10; //长整型 long num3 = 10; //长长整型 long long num4 =10; cout << "num1 = " << num1 << endl; cout << "num2 = " << num1 << endl; cout << "num3 = " << num1 << endl; cout << "num4 = " << num1 << endl; system("pause"); return 0; }
2.2 sizeof关键字
作用:利用sizeof关键字可以统计数据类型所占内存大小
语法:sizeof(数据类型/变量)
#include<iostream> using namespace std; int main(){ //整型:short(2) int(4) long(4) long long(8) //可以利用sizeof求出数据类型占用大小 short num1 = 10; cout << "short占用内存空间为:" << sizeof(num1/*short*/) << endl; int num2 = 10; cout << "int占用内存空间为:" << sizeof(num2/*int*/) << endl; long num3 = 10; cout << "long占用内存空间为:" << sizeof(num3/*long*/) << endl; long long num4 = 10; cout << "long long占用内存空间为:" << sizeof(num4/*long long*/) << endl; return 0; }
2.3 实型(浮点型)
作用:用于表示小数
浮点型分为一下两种,区别在于有效数字的范围不同:
数据类型 | 占用空间 | 有效数字范围 |
---|---|---|
float(单精度) | 4字节 | 7位有效数字 |
double(双精度) | 8字节 | 15~16位有效数字 |
#include<iostream> using namespace std; int main(){ //1.单精度 float //2.双精度 double //默认情况下输出一个小数,会显示出6位有效空间 float f1 = 3.14f; //默认双精度,加f表明为单精度 cout << "f1 = " << f1 << endl; double d1 = 3.14; cout << "d1 = " << d1 << endl; //科学计数法 float f2 = 3e2; //3*10^2; cout << "f2 = " << f2 << endl; float f3 = 3e-2; // 3*0.1^2; cout << "f3 = " << f3 << endl; return 0; }
2.4 字符型
作用:字符型变量通常用于显示单个字符
语法:char ch = 'a';
注意1:在现实字符变量时,用单引号将字符括起来,不要用双引号
注意2:单引号内只能有一个字符,不可以是字符串
#include<iostream> using namespace std; int main(){ //1.字符型变量创建方式 char ch = 'a'; cout << ch << endl; //2.字符型变量所占内存大小 cout << "" << sizeof(char) << endl; //3.字符型变量常见错误 //4.字符型变量对应ASCⅡ编码 //a - 97 //A - 65 cout << (int)ch << endl; return 0; }
2.5 转义字符
作用:用于表示一些不能显示出来的ASCⅡ字符
现阶段常用的转义字符有:\n 换行 \\反斜杠 \t水平制表符
(反斜杠)
cout << "aaa\thello" << endl //aaa+\t为八个字符
2.6 字符串型
作用:用于表示一串字符
两种风格:
- C语言风格字符串:
char 变量名[] = "字符串值"
#include<iostream> using namespace std; int main(){ char str[] = "hello world"; cout << str << endl; return 0; }
注意:方括号[]
- C++风格字符串:
string 变量名 = "字符串值"
#include<iostream> #include<string> using namespace std; int main(){ string str2 = "hello world"; cout << str2 << endl; return 0; }
注意:包含头文件
2.7 布尔类型 bool
作用:布尔类型代表真或假的值
bool数据类型占一个字节大小
2.8 数据的输入
作用:用于从键盘获取数据
关键字:cin
语法:cin >> 变量
#include<iostream> using namespace std; int main(){ int a = 0; cout << "给int a赋值:" << endl; cin >> a; cout << "int a:" << endl; return 0; }