C++学习进度二

数据类型

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

2.1 整型

作用:整型变量表示的是整数类型的数据
C++能够表示整数的类型有以下几种方式,区别在于所占内存空间不同:
在这里插入图片描述

#include<iostream>
using namespace std;
int main()
{
	//整型
	//1.短整型(-32768~32767)
	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;
}

2.2 sizeof关键字

作用:利用sizeof关键字可以统计数据类型所占内存大小
语法:sizeof(数据类型 / 变量)
示例:

int main()
{
	//1.短整型(-32768~32767)
	short num1 = 10;//2字节
	//2.整型
	int num2 = 10;//4字节
	//3.长整型
	long num3 = 10;//4字节
	//4.长长整型
	long long num4 = 10;//8字节
	//可以利用sizeof求出数据类型占用内存大小
	//语法: sizeof(数据类型 / 变量)
	cout << "short占用内存空间为:" << sizeof(short) << endl;
	cout << "int占用内存空间为:" << sizeof(num2) << endl;
	cout << "long占用内存空间为:" << sizeof(num3) << endl;
	cout << "long long占用内存空间为:" << sizeof(num4) << endl;
	//整数型大小比较
	//short < int <= long <= long long
	system("pause");
	return 0;
}

2.3 实型(浮点型)

作用:用于表示小数
浮点型变量分为两种:

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

两者的区别在于表示的有效数字范围不同
在这里插入图片描述
示例:

int main()
{
	//单精度
	float num1 = 3.1415926f;
	cout << "num1=" << num1 << endl;
	//双精度
	//默认情况下 输出一个小数,会显示出6位有效数字
	double num2 = 3.1415926;
	cout << "num2=" << num2 << endl;
	//统计float和double占用内存空间
	cout << "float占用内存空间为:" << sizeof(num1) << endl;//4字节
	cout << "double占用内存空间为:" << sizeof(num2) << endl;//8字节
	//科学计数法
	float f2 = 3e2;//3 * 10^2
	cout << "f2 =" << f2 << endl;
	float f3 = 3e-2;//3 * 0.1^2
	cout << "f3 =" << f3 << endl;
	system("pause");
	return 0;
}

2.4 字符型

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

语法:char ch = 'a';

注意1:在显示字符变量时,用单引号将字符括起来,不要用双引号
注意2:单引号内只能有一个字符,不可以是字符串

  • C和C++中字符型变量只占用1个字节
  • 字符型变量并不是把字符本身放到内存中存储,而是将对应的ASCII编码放入到存储单元
    示例:
```cpp
int main()
{
	//字符型变量创建方式
	char ch = 'a';
	cout << ch << endl;
	//字符型变量所占内存大小
	cout << "char字符型变量所占内存为:" << sizeof(char) << endl;
	//字符型变量常见错误
	/*
	char ch2 = "b";//创建字符型变量时,要用单引号
	char ch3 = 'abcdef';//创建字符型变量时,单引号内只能有一个字符
	*/
	//字符型变量对应的ASCII编码
	//a - 97
	//A - 65
	cout << (int)ch << endl;
	system("pause");
	return 0;
}

ASCII码大致有以下两部分组成:

  • ASCII非打印控制字符:ASCII表上的数字0-31分配给了控制字符,用于控制像打印机等一些外围设备

  • ASCII打印字符:数字32-126分配给了能在键盘上找到的字符,当查看或打印文档时就会出现

2.5 转义字符

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

现阶段我们常用的转义字符有:\n \\ \t

在这里插入图片描述

int main()
{
	//转义字符
	//换行符 \n
	cout << "hello world\n";
	//反斜杠 \\

	cout<<"\\"<<endl;
	//水平制表符 \t  作用可以整齐的输出数据
	cout << "aaaa\thello world" << endl;
	cout << "aaa\thello world" << endl;
	cout << "aaaaa\thello world" << endl;
	system("pause");
	return 0;
}

2.6 字符串型

作用:用于表示一串字符
两种风格
1.C风格字符串:char 变量名[] = “字符串值”
示例:

int main()
{
	//C风格字符串
	//注意事项  char 字符串名 []
	//注意事项2 等号后面 要用双引号 包含起来字符串
	char str[] = "hello world";
	cout << str << endl;
	system("pause");
	return 0;
}

2.C++风格字符串:string 变量名 = “字符串值”
示例:

#include<iostream>
int main()
{
	//C++风格字符串
	//注意事项 包含一个头文件 #include<string>
	string str1 = "Hello World";
	cout << str1 << endl;
	system("pause");
	return 0;
}

2.7 布尔类型bool

作用:布尔数据类型代表真或假的值
bool类型只有两个值:

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

bool类型占1个字节大小
示例:


```cpp
int main()
{
	//创建bool类型
	//本质 1代表真 0代表假
	bool flag1 = true;
	cout << flag1 << endl;
	bool flag2 = false;
	cout << flag2 << endl;
	//查看bool类型所占内存空间
	cout << "bool类型所占内存空间为:" << sizeof(bool) << endl;
	system("pause");
	return 0;
}

2.8 数据的输入

作用:用于从键盘获取数据
关键字:cin

语法:cin >> 变量

示例:

int main()
{
	//输入整型
	int a = 0;
	cout << "请给整型变量a赋值:" << endl;
	cin >> a;
	cout << "整型变量a=" << a << endl;
	//输入浮点型
	float b = 0;
	cout << "请给浮点型变量b赋值:" << endl;
	cin >> b;
	cout << "浮点型变量b=" << b << endl;
	//输入字符型
	char c = '\0';
	cout << "请给字符型变量c赋值:" << endl;
	cin >> c;
	cout << "字符型变量c=" << c << endl;
	//输入字符串
	string d;
	cout << "请给字符串变量d赋值:" << endl;
	cin >> d;
	cout << "字符串变量d=" << d << endl;
	//输入布尔类型
	bool e = false;
	cout << "请给bool类型变量e赋值:" << endl;
	cin >> e;//bool类型 只要是非0的值都代表真
	cout << "布尔类型变量e=" << e << endl;
	system("pause");
	return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值