数据类型
一、整型
作用:整型变量表示的是整数类型的数据。
c++中能够表示整型的类型有以下几种,区别在于所占内存空间的不同:
数据类型 占用空间 取值范围
short(短整型) 2字节 -2^15~2^15-1
int(整型) 4字节 -2^31~2^31-1
long(长整型) Windows为4字节 -2^31~2^31-1
long long(长长整型) 8字节 -2^63~2^63-1
注:可以利用sizeof求出数据类型占用内存大小
语法:sizeof(数据类型/变量)
#include <iostream> using namespace std; int main() { int n=1; cout<<"int占用内存空间为:"<<sizeof(int)<<endl; cout<<"int占用内存空间为:"<<sizeof(n)<<endl; return 0; }
二、实型(浮点型)
作用:用于表示小数
浮点类型变量分为两种:
1.单精度float
2.双精度double
两者的区别在于表示的有效数字范围不同。
数据类型 占用字节 有效数字范围
float 4字节 6~7位有效数字
double 8字节 15~16位有效数字
一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快。
如果不声明,默认小数为double类型,所以如果要用float的话,必须进行强转。
eg:float a = 1.24546f;
科学计数法:
float f1=3e2=3*10^2;
float f2=3e-2=3*0.1^2;
三、字符型
作用:字符型变量用于显示单个字符。
语法:char 变量名称='字符';
例:char ch='a';
注意:
1.在显示字符型变量时,用单引号将字符括起来,不要用双引号。
2.单引号内只能有一个字符,不可以是字符串。
C和C++中字符型变量只占用1个字节。
字符型变量并不是把字符本身放到内存中储存,而是将对应的ASCII编码放入到储存单元。
char ch1 = 'a'; char ch2 = 'A'; cout << ch1 << (int)ch1<<endl; cout << ch2<<(int)ch2<< endl;
大写英文字母和小写英文字母的ASCII编码并不同
#include <iostream> int main() { char chr1; scanf("%c",&chr1); printf("%c",chr1-32); return 0; }
四、转义字符
作用:用于表示一些不能显示出来的ASCII字符
(来源:百度百科)
五、字符串型
作用:用于表示一串字符。
1.C风格字符串:
语法:char 变量名 []="字符串值";
示例:
char str1[]="hello world"; cout<<str1<<endl;
注意:C风格字符串要用双括号。
2.C++风格字符串
语法: string 变量名="字符串值";
示例:
#include <iostream> #include <string> using namespace std; int main() { string str2="hello world"; cout<<str2; return 0; }
注意:在使用C++风格字符串时要包含#include <string>头文件。
六、布尔类型 bool
作用:布尔数据类型代表真或假的值
bool类型只有两个值:
- true ---真(本质是1)
- false ---假(本质是0)
bool类型占1个字节
bool flag=true; cout<<flag<<endl; flag =false; cout<<flag<<endl; return 0;