[C++] 数据类型

系列文章目录

1、初识C++
http://t.csdnimg.cn/WIT0Z
2、数据类型
http://t.csdnimg.cn/CoURP
未完待续



前言

本文主要讲述
整型、浮点型(或实型)、字符型、字符串类型、布尔类型
sizeof关键字、cin关键字、转义字符


一、整型

整型又分为:短整型、整型、长整型、长长整型

//整型
int main() {
	//1、短整型:大小为2个字节
	//可表示的数据范围:-2^15 - 2^15-1)
	short num1 = 10;

	//2、整型:大小为4个字节
	//可表示的数据范围:(-2^31 - 2^31-1)
	int num2 = 10;

	//3、长整型:
	//Windows系统下大小为4个字节
	//Linux系统32位下大小为4个字节,64位下大小为8个字节
	//Windows -- 可表示的数据范围:(-2^31 - 2^31-1)
	//Linux -- 可表示的数据范围:(-2^31 - 2^31-1) 或 (-2^63 - 2^63 - 1)
	long num3 = 10;

	//4、长长整型:大小为8个字节
	//可表示的数据范围:(-2^63 - 2^63-1)
	long long num4 = 10;

	return 0;
}

二、浮点型/实型

1. 单精度与双精度

浮点型/实型:可分为单精度浮点型和双精度浮点型

//实型/浮点型
int main() {
	//1、单精度浮点型:7位有效数字 - 大小为4个字节
	float f1 = 3.14f;//数字结尾加f,不然编译器默认识别为双精度浮点型
	//这里的例子3.14共表示的3位有效数字,最高可表示7位
	cout << f1 << endl;//输出示例

	//2、双精度浮点型:15位有效数字 - 大小为8个字节
	double d1 = 3.1415926;
	//这里的例子3.1415926共表示的3位有效数字,最高可表示15位
	cout << d1 << endl;//输出示例
	
	return 0;
}

默认情况下输出一个小数,只显示六位有效数字
在这里插入图片描述

2. 科学计数法

int main() {

	//1、整数
	float f2 = 3e2f;
	//3e2 等价于 3 * 10 ^ 2
	cout << f2 << endl;
	
	//2、小数
	float f3 = 3e-2f;
	//3e2 等价于 3 * 0.1 ^ 2
	cout << f3 << endl;
	
	return 0;
}

在这里插入图片描述
出现这个是因为没加f
在这里插入图片描述

三、字符型

int main() {
	//字符型:只能存储单个字符,大小为1字节
	char ch = 'a';//必须用单引号括起来
	cout << ch << endl;

	//字符型的本质也是整型
	//在计算机内部的存储方式为ASCII码,因此可以将其用强制类型转换输出为整型
	cout << (int)ch << endl;

	//再举个例子
	//既然是用ASCII码存储,所以我们赋值时也可用ASCII码代替
	ch = 97; //'a'的ASCII码为97
	cout << ch << endl
	
	return 0;
}

在这里插入图片描述

四、字符串类型

#include <string>
int main() {
	//1、C语言风格字符串
	//语法:char 字符串名[] = ""
	//赋值的字符串要用双引号""括起来
	char str1[] = "hello world1";
	//
	cout << str1 << endl;

	//2、C++风格字符串
	//语法:string 字符串名 = ""
	//包含头文件<string>,如上方所示
	string str2 = "hello world2";
	cout << str2 << endl;

	return 0;
}

计算所占字节大小等到了学到数组再讲
在这里插入图片描述

五、布尔类型

布尔类型用来表示两种状态,真(true),假(false)
假 – 本质为0
真 – 除0以外的所有数

int main() {
	//1、布尔类型:大小为1字节
	bool flag = true;//true表示真(本质是1,也可以是除0以外的任何数)
	cout << flag << endl;

	flag = false;//false表示假(本质是0)
	cout << flag << endl;

	return 0;
}

在这里插入图片描述

六、sizeof关键字

在以上除字符串类型以外我们都讲述了该类型所占字节的大小,那么我们是如何得知的呢
sizeof关键字的作用之一就是用来计算这些类型的所占的字节数
语法:sizeof(类型名)

int main() {	
	//1、整型
	cout << "short所占大小为" << sizeof(short) << " 字节" << endl;
	cout << "int所占大小为" << sizeof(int) << " 字节" << endl;
	cout << "long所占大小为" << sizeof(long) << " 字节" << endl;
	cout << "long long所占大小为" << sizeof(long long) << " 字节" << endl;
	//2、浮点型
	cout << "float所占大小为" << sizeof(float) << " 字节" << endl;
	cout << "double所占大小为" << sizeof(double) << " 字节" << endl;
	//3、字符型
	cout << "char所占大小为" << sizeof(char) << " 字节" << endl;
	//4、波尔类型
	cout << "bool所占大小为" << sizeof(bool) << " 字节" << endl;
	return 0;
}

在这里插入图片描述

七、cin关键字

利用cin关键字我们可以给数据类型赋值时从键盘输入
语法:cin >> 变量名

int main() {
	//1、整型
	int a = 0;//先在最初赋一个初始值
	cout << "请给整型变量a赋值->";
	cin >> a;
	cout << "整型变量a等于" << a << endl;

	//2、浮点型
	float f = 3.14f;//先在最初赋一个初始值
	cout << "请给浮点型变量f赋值->";
	cin >> f;
	cout << "浮点型变量f等于" << f << endl;

	//3、字符型
	char ch = 'a';//先在最初赋一个初始值
	cout << "请给字符型变量ch赋值->";
	cin >> ch;
	cout << "字符型变量ch等于" << ch << endl;

	//4、字符串型 -- C语言风格的字符串赋值涉及数组的知识暂时不讲
	string str = "hello";//先在最初赋一个初始值
	cout << "请给字符串型变量str赋值->";
	cin >> str;
	cout << "字符串型变量str等于" << str << endl;

	//4、布尔类型
	bool flag = true;//先在最初赋一个初始值
	cout << "请给布尔类型变量flag赋值->";
	cin >> flag;
	cout << "布尔类型变量flag等于" << flag << endl;
	return 0;
}

在这里插入图片描述

八、转义字符

顾名思义,转义字符是将特定字符转变意义,在输出文本时,计算机将它识别成特定的功能
在这里插入图片描述
我们主要讲三个比较常用的 \n \t \\

int main() {

	//换行 \n
	cout << "hello world\n";//原本的endl也是换行,现在我们用\n将它替换

	//反斜杠 \\ 
	cout << "\\" << endl;//如果必要情况下我们需要输出一个\,则需要再加上一个\,这样计算机才能知道我们是要输出单个\ 
	cout << "\\\\" << endl;//输出多个也是同理

	//水平制表符 - 整齐的输出数据
	//单个\t占八个空位
	cout << "aaaa\thello world" << endl;//这里在\t之前已经占了四个位置,所以此时\t输出四个空位
	cout << "aaa\thello world" << endl;//这里在\t之前已经占了三个位置,所以此时\t输出五个空位
	cout << "aa\thello world" << endl;//与上同理
	cout << "a\thello world" << endl;//与上同理
	//那么如果\t之前已经占满了八位呢
	cout << "aaaaaaaa\thello world" << endl;
	//此时就会重新输出八个空位

	return 0;
}

在这里插入图片描述


总结

下期预告:运算符

  • 22
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值