CH02_数据类型


数据类型

整型

描述:整型变量表示的是整型类型的数据,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

示例

  1. #include <iostream>
  2. using namespace std;
  3. //入口函数
  4. int main() {
  5. //短整型范围:-32768 ~ 32767
  6. short num1 = 10;
  7. short num1_2 = 32769;//实际为-32767(超出范围自动回环)
  8. //整型范围:-2,147,483,648 ~ 2,147,483,647
  9. int num2 = 10;
  10. //长整型范围:-2,147,483,648 ~ 2,147,483,647
  11. long num3 = 10;
  12. //长长整型范围:-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
  13. long long num4 = 10;
  14. cout << "num1_2:" << num1_2 << endl;
  15. system("pause");
  16. return 0;
  17. }

sizeof关键字

作用:统计数据类型所占空间大小

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

示例:

  1. #include <iostream>
  2. using namespace std;
  3. //入口函数
  4. int main() {
  5. int num = 10;
  6. cout << "short:" << sizeof(short) << endl;
  7. cout << "num:" << sizeof(num) << endl;
  8. cout << "int:" << sizeof(int) << endl;
  9. cout << "long:" << sizeof(long) << endl;
  10. cout << "long long:" << sizeof(long long) << endl;
  11. system("pause");
  12. return 0;
  13. }

实型(浮点型)

作用:用于表示小数。

浮点型变量分为两种:

1.单精度浮点型float

2.双精度浮点型double

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

数据类型 占用空间 有效数字范围
float 4字节 7位有效数字
double 8字节 15~16位有效数字

示例:

  1. #include <iostream>
  2. using namespace std;
  3. //入口函数
  4. int main() {
  5. //默认情况,显示一个小数,会显示6位有效数字
  6. float num1 = 3.1415926f;
  7. float num1_2 = 314.15926f;
  8. double num2 = 3.123456789123456789;
  9. double num2_2 = 312.3456789123456789;
  10. //输出结果:3.14159
  11. cout << "num1:" << num1 << endl;
  12. //输出结果:314.159
  13. cout << "num1_2:" << num1_2 << endl;
  14. //输出结果:3.12346
  15. cout << "num2:" << num2 << endl;
  16. //输出结果:312.346
  17. cout << "num2_2:" << num2_2 << endl;
  18. //科学计数法
  19. float f1 = 3e2; //3*10^2
  20. float f2 = 3e-2;//3*0.1^2
  21. cout << "f1:" << f1 << endl; //300
  22. cout << "f2:" << f2 << endl; //0.03
  23. system("pause");
  24. return 0;
  25. }

字符型

作用:用于存储单个字符

语法:char sex='A';

特点:

1.C和C++中的字符型变量只占用一个字节

2.字符型变量并不是把字符本身放在内存中存储,而是将对应的ASCII编码放入存储单元。

3.一个汉字占两个字节,无法用char型存储

示例:

  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. //字符型变量的定义
  5. char ch = 'A';
  6. cout << ch << endl;
  7. //字符型变量所占内存大小
  8. cout << "占用空间:" << sizeof(char) << endl;
  9. //字符型变量对应的ASCII码
  10. cout << "ASCII:"<<(int)ch << endl;
  11. //常见错误
  12. //char a = "a";
  13. //char b = 'abc';
  14. system("pause");
  15. return 0;
  16. }

转义字符

作用:用于表示一些不能显示出来的ASSCI码

  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. // \n:换行
  5. cout << "hello\nworld" <<endl;
  6. // \t:制表符
  7. cout << "hello\tc++" << endl;
  8. // \\:反斜杠
  9. cout << "hello\\c" << endl;
  10. system("pause");
  11. return 0;
  12. }

字符串型

作用:用于表示一串字符

两种风格:

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

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

示例:

  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. //C风格字符串
  5. char str1[] = "hello c";
  6. cout << "str1:" << str1 << endl;
  7. //C++风格字符串
  8. string str2 = "hello c++";
  9. cout << "str2:" << str2 << endl;
  10. system("pause");
  11. return 0;
  12. }

布尔型

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

bool类型只有两个值:

true:真(本质是1)

false:假 (本质是0)

示例:

  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. bool flag = false;
  5. //输出结果:0
  6. cout << "flag:" << flag << endl;
  7. //占用空间:1
  8. cout << "占用空间:" << sizeof(flag) << endl;
  9. system("pause");
  10. return 0;
  11. }

数据的输入

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

关键字:cin

语法:cin >> 变量

示例:

  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. //1.整型输入
  5. int a = 0;
  6. cout << "请输入一个整数:" << endl;
  7. cin >> a;
  8. cout << "输入的整数为:" << a << endl;
  9. //2.浮点型输入
  10. double b = 0;
  11. cout << "请输入一个小数:" << endl;
  12. cin >> b;
  13. cout << "输入的小数为:" << b << endl;
  14. //3.字符型输入
  15. char c = ' ';
  16. cout << "请输入一个字符:" << endl;
  17. cin >> c;
  18. cout << "输入的字符为:" << c << endl;
  19. //4.字符串输入
  20. string d = "";
  21. cout << "请输入一个字符串:" << endl;
  22. cin >> d;
  23. cout << "输入的整数为:" << d << endl;
  24. //bool型输入
  25. bool e = false;
  26. cout << "请输入一个bool型数据:" << endl;
  27. cin >> e;//赋值时:1为true,0为false,默认为false
  28. cout << "输入的bool型值为:" << e << endl;
  29. system("pause");
  30. return 0;
  31. }

CH02_数据类型的更多相关文章

  1. JavaScript 中的数据类型

    Javascript中的数据类型有以下几种情况: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Function,Date,Ar ...

  2. JS 判断数据类型的三种方法

    说到数据类型,我们先理一下JavaScript中常见的几种数据类型: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Functi ...

  3. Python高手之路【二】python基本数据类型

    一:数字 int int(整型): 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值 ...

  4. UniqueIdentifier 数据类型 和 GUID 生成函数

    UniqueIdentifier 数据类型用于存储GUID的值,占用16Byte. SQL Server将UniqueIdentifier存储为16字节的二进制数值,Binary(16),按照特定的格 ...

  5. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 1.整数类型 int 存储范围是-2,147,483,648到2,147,483 ...

  6. 由js apply与call方法想到的js数据类型(原始类型和引用类型)

    原文地址:由js apply与call方法想到的js数据类型(原始类型和引用类型) js的call方法与apply方法的区别在于第二个参数的不同,他们都有2个参数,第一个为对象(即需要用对象a继承b, ...

  7. python 数据类型 ----字典

    字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...

  8. SQL数据类型

    1.Character 字符串: 数据类型 描述 存储 char(n) 固定长度的字符串.最多8,000个字符. n varchar(n) 可变长度的字符串.最多8,000个字符.   varchar ...

  9. 跟着老男孩教育学Python开发【第二篇】:Python基本数据类型

    运算符 设定:a=10,b=20 . 算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**3 ...

  10. 我的MYSQL学习心得(二) 数据类型宽度

    我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

随机推荐

  1. 02-Python基础

    文件编码 Python2中 在Python2中:默认文件编码是ASC II,所以无法正常输出中文,会报错. 解决办法 在文件的开头添加# -- coding: UTF-8 -- 或者 # coding ...

  2. Kubernetes(K8s)之Pod

    Pod介绍 Pod是K8s的最小调度单位 内部是一组Container容器,根容器Pause和其他业务容器 拥有唯一Pod IP 小贴士: 在生产环境中,极少单独Pod的情况 一般都是使用Deploy ...

  3. HarmonyOS SDK助力鸿蒙原生应用“易感知、易理解、易操作”

    6月21-23日,华为开发者大会(HDC 2024)盛大开幕.6月23日上午,<HarmonyOS开放能力,使能应用原生易用体验>分论坛成功举办,大会邀请了多位华为技术专家深度解读如何通过 ...

  4. python 无监督生成模型

    无监督生成模型在机器学习中扮演着重要角色,特别是当我们在没有标签数据的情况下想要生成新的样本或理解数据的内在结构时.一种流行的无监督生成模型是生成对抗网络(Generative Adversarial ...

  5. HGAME2023 week1-week2

    确实是高质量比赛,学到了很多知识.认识到了很多的不足. 任重而道远啊... hgame_week1 web Classic Childhood Game F12检查源码,打开Events.js 发现 ...

  6. 全网最适合入门的面向对象编程教程:13 类和对象的Python实现-可视化阅读代码神器Sourcetrail的安装使用

    全网最适合入门的面向对象编程教程:13 类和对象的 Python 实现-可视化阅读代码神器 Sourcetrail 的安装使用 摘要: 本文主要介绍了可视化阅读代码神器Sourcetrail的安装与使 ...

  7. 【java深入学习第1章】深入探究 MyBatis-Spring 中 SqlSession 的原理与应用

    前言 在使用 MyBatis 进行持久层开发时,通常会与 Spring 框架集成,以便更好地管理事务和依赖注入.在 MyBatis-Spring 集成中,SqlSession 是一个非常重要的概念.本 ...

  8. [PHP]用socket写一个简单的WEB服务器

    今天我就要把我的最新研究成果展示看看,而不玩ARMBIAN了,因为刷了两台S905L3的发现一点挑战都没有 从0.2写WEB服务难啊,你需要懂HTTP协议和SOCKET!不过有经验我们很快就可以搭建一 ...

  9. CF916C 题解

    CF916C 题解 思路 思考发现,如果我们让很多边的边权变得非常大,而故意留下 \(1\) 到 \(n\) 的某一条路径,使整条路径之和甚至还没有剩下一条边的权值大,这条路径显然就是最短路了. 更重 ...

  10. go 环境搭建

    下载go 编辑器 https://www.jetbrains.com.cn/go/ 激活工具可以留言,我看到就回复.(保存在阿里云盘) 编辑器配置 GOPROXY=https://goproxy.cn ...