数据类型

数据类型

C++ 规定在创建一个变量或者常量时,必须指定出相应的数据类型,否则无法给变量分配内存

整型

作用:整型变量表示的是整数类型的数据

C++ 中能够表示整型的类型有以下几种方式,区别在于所占内存空间不同:

数据类型占用空间取值范围
short2 字节-32768~32767
int4 字节-231~231-1
longwin 为 4 字节,linux 为 4 字节(32 位),8 字节(64 位)-231~231-1
long long8 字节-263~263-1
#include <iostream>
using namespace std;


int main1()
{
	//整型
	//1.短整型
	short num1 = 10;

	//2.整型
	int num2 = 10;

	//3.长整型
	long num3 = 10;

	//4.长长整型
	//long long num4 = 10;
	
	cout<< "num1 = " << num1 << endl;

	cout<< "num2 = " << num2 << endl;

	cout<< "num3 = " << num3 << endl;

	cout<< "num4 = " << num4 << endl;


	system("pause");

	return 0;
}

sizeof 关键字

作用:利用 sizeof 关键字可以统计数据类型所占内存大小

语法:sizeof(数据类型 / 变量)

#include <iostream>
using namespace std;


int main()
{
	cout<< "short 占用内存空间为:" << sizeof(short) << endl;

	cout<< "int 占用内存空间为:" << sizeof(int) << endl;

	cout<< "long 占用内存空间为:" << sizeof(long) << endl;

	cout<< "long long 占用内存空间为:" << sizeof(long long) << endl;


	system("pause");

	return 0;
}

实型(浮点型)

作用:用于表示小数

浮点型变量分为两种:

  1. 单精度 float
  2. 双精度 double

两者区别在于表示的有效数字范围不同

数据类型占用空间有效数字范围
float4 字节7 位有效数字
double8 字节15~16 位有效数字
#include <iostream>
using namespace std;


int main()
{	
	//默认情况下输出一个小数,会显示出 6 位有效数字
	float f1 = 3.1415926f;
	cout<< "f1 = " << f1 << endl;

	double d1 = 3.1415926;
	cout<< "d1 = " << d1 << endl;

	
	//统计 float 和 double 占用内存空间
	cout<< "float 占用内存空间为:" << sizeof(float) << endl;

	cout<< "double 占用内存空间为:" << sizeof(double) << endl;


	system("pause");

	return 0;
}

字符型

作用:字符型变量用于显示单个字符

语法:char ch = 'a';

  • 在显示字符型变量时,用单引号将字符括起来,不要用双引号

      	- 单引号内只能有一个字符,不可以是字符串
      	- C 和 C++ 中字符型变量只占用一个字节
      	- 字符型变量并不是把字符本身放到内存中存储,而是将对应的 ASCII 编码放入到储存单元
    
#include <iostream>
using namespace std;


int main()
{	
	//1.字符型变量创建方式
	char ch = 'a';

	cout << ch << endl;


	//2.字符型变量所占内存大小
	cout << "char 字符型变量所占内存:" << sizeof(char) << endl;


	//3.字符型变量常见错误
		//创建字符型变量,要用单引号
		//创建字符型变量,单引号内只能有一个字符


	//4.字符型变量对应 ASCII 编码
	cout << (int)ch << endl;


	system("pause");

	return 0;
}

转义字符

作用:用于表示一些不能显示出来的 ASCII 字符

#include <iostream>
using namespace std;


int main()
{	
	//转义字符

	//换行符 \n
	cout << "hello world\n";
	

	//反斜杠
	cout << "\\" << endl;
	

	//水平制表符 \t 作用:可以整齐的输出数据
	cout << "aaa\thelloworld" << endl;
	cout << "aaaa\thelloworld" << endl;
	cout << "aaaaa\thelloworld" << endl;
	

	system("pause");

	return 0;
}

字符串型

作用:用于表示一串字符

两种风格

  1. C 风格字符串:char 变量名[] = "字符串值";

    注意:C 风格的字符串要用双引号括起来

  2. C++ 风格字符串:string 变量名 = "字符串值";

    注意:要包含头文件 #include <string>

#include <iostream>
using namespace std;
#include <string>


int main()
{	
	//字符串型
	//1.C 风格字符串
	char str[] = "hello world";
	cout << str << endl;
	
	//2.C++ 风格字符串
	string str2 = "hello world";
	cout << str2 << endl;


	system("pause");

	return 0;
}

布尔类型 bool

作用:布尔数据类型代表真或假的值

bool 类型只有两个值:

  • true — 真(本质是 1)
  • false — 假(本质是 0)

bool 类型占一个字节大小

#include <iostream>
using namespace std;
#include <string>


int main()
{	
	//1.创建 bool 数据类型
	bool flag = true;
	cout << flag << endl;

	flag = false;
	cout << flag << endl;
	

	//2.查看 bool 数据类型所占内存空间
	cout << "bool 数据类型所占内存空间:" << sizeof(bool) << endl;


	system("pause");

	return 0;
}

数据的输入

作用:用于从键盘获取数据

关键字:cin

语法:cin >> 变量

#include <iostream>
using namespace std;
#include <string>


int main()
{	
	//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 = true;
	cout << "请给布尔类型变量 flag 赋值:" << endl;
	cin >> flag;
	cout << "布尔类型变量 flag = " << flag << endl;
	//bool 类型:只要是非 0 的值都代表真

	system("pause");

	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值