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

示例

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

sizeof关键字

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

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

示例:

#include <iostream>
using namespace std; //入口函数
int main() { int num = 10; cout << "short:" << sizeof(short) << endl;
cout << "num:" << sizeof(num) << 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

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

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

示例:

#include <iostream>
using namespace std; //入口函数
int main() { //默认情况,显示一个小数,会显示6位有效数字
float num1 = 3.1415926f;
float num1_2 = 314.15926f;
double num2 = 3.123456789123456789;
double num2_2 = 312.3456789123456789; //输出结果:3.14159
cout << "num1:" << num1 << endl;
//输出结果:314.159
cout << "num1_2:" << num1_2 << endl; //输出结果:3.12346
cout << "num2:" << num2 << endl;
//输出结果:312.346
cout << "num2_2:" << num2_2 << endl; //科学计数法
float f1 = 3e2; //3*10^2
float f2 = 3e-2;//3*0.1^2 cout << "f1:" << f1 << endl; //300
cout << "f2:" << f2 << endl; //0.03 system("pause"); return 0;
}

字符型

作用:用于存储单个字符

语法:char sex='A';

特点:

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

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

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

示例:

#include <iostream>
using namespace std; int main() { //字符型变量的定义
char ch = 'A';
cout << ch << endl; //字符型变量所占内存大小
cout << "占用空间:" << sizeof(char) << endl; //字符型变量对应的ASCII码
cout << "ASCII:"<<(int)ch << endl; //常见错误
//char a = "a";
//char b = 'abc'; system("pause");
return 0;
}

转义字符

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

#include <iostream>
using namespace std; int main() { // \n:换行
cout << "hello\nworld" <<endl; // \t:制表符
cout << "hello\tc++" << endl; // \\:反斜杠
cout << "hello\\c" << endl; system("pause");
return 0;
}

字符串型

作用:用于表示一串字符

两种风格:

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

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

示例:

#include <iostream>
using namespace std; int main() { //C风格字符串
char str1[] = "hello c";
cout << "str1:" << str1 << endl; //C++风格字符串
string str2 = "hello c++";
cout << "str2:" << str2 << endl; system("pause");
return 0;
}

布尔型

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

bool类型只有两个值:

true:真(本质是1)

false:假 (本质是0)

示例:

#include <iostream>
using namespace std; int main() { bool flag = false; //输出结果:0
cout << "flag:" << flag << endl; //占用空间:1
cout << "占用空间:" << sizeof(flag) << endl; system("pause"); return 0;
}

数据的输入

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

关键字:cin

语法:cin >> 变量

示例:

#include <iostream>
using namespace std; int main() { //1.整型输入
int a = 0;
cout << "请输入一个整数:" << endl;
cin >> a;
cout << "输入的整数为:" << a << endl; //2.浮点型输入
double b = 0;
cout << "请输入一个小数:" << endl;
cin >> b;
cout << "输入的小数为:" << b << endl; //3.字符型输入
char c = ' ';
cout << "请输入一个字符:" << endl;
cin >> c;
cout << "输入的字符为:" << c << endl; //4.字符串输入
string d = "";
cout << "请输入一个字符串:" << endl;
cin >> d;
cout << "输入的整数为:" << d << endl; //bool型输入
bool e = false;
cout << "请输入一个bool型数据:" << endl;
cin >> e;//赋值时:1为true,0为false,默认为false
cout << "输入的bool型值为:" << e << endl; system("pause"); return 0;
}

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. FFmpeg开发笔记(三十二)利用RTMP协议构建电脑与手机的直播Demo

    不管是传统互联网还是移动互联网,实时数据传输都是刚需,比如以QQ.微信为代表的即时通信工具,能够实时传输文本和图片.其中一对一的图文通信叫做私聊,多对多的图文通信叫做群聊. 除了常见的图文即时通信,还 ...

  2. CLR via C# 笔记 -- 委托(17)

    1. 委托是方法的包装器,使方法能通过包装器来间接回调.在一个类型中通过委托来调用另一个类型的私有成员,只要委托对象是具有足够安全性/可访问性的代码创建,便没有问题. 2. 协变性:方法能返回从委托的 ...

  3. hbase第一课:hbase-2.2.7分布式搭建

    hbase-2.2.7分布式搭建文档 1.上传解压配置环境变量 # 1.解压 tar -xvf hbase-2.2.7-bin.tar.gz.gz # 2.配置环境变量 vim /etc/profil ...

  4. 设备树DTS 学习:学习总结(应用篇)

    设备树DTS 学习:学习总结(应用篇) 背景 经过前几章的学习,我们可以说是掌握了设备树的基础用法,现在作为总结回顾. 1.设备树DTS 学习:有关概念 介绍了什么是设备树,设备树的作用,如何编译设备 ...

  5. 2024UIUCTF - OSINT - Night

    2024UIUCTF - OSINT - Night 题目描述 Author: CBCicada That was quite a pretty night view, can you find wh ...

  6. SpringBoot集成ShardingSphere分表中间件

    ShardingSphere简介 ShardingSphere 由 JDBC.Proxy 和 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署配合使用的产品组成. 它们均提供标准化的基 ...

  7. Mac制作U盘启动项

    导读 鄙人刚买回来的电脑,自带系统版本:10.14.5(19款的),有一天,提示系统升级,升到了10.15.4,从此落下了后遗症,mac系统密码输入完之后,读条读到2/3的时候,会黑屏闪一下,百思不得 ...

  8. 开源免费又好用的中式数据报表:UReport2是一款高性能的架构在Spring之上纯Java报表引擎,通过迭代单元格可以实现任意复杂的中国式报表。

    北润乾.南帆软,数加发力在云端. uReport 身何安?中式报表真开源. 报表江湖之中,uReport安身立命的产品品类定位是什么? 说来很简单,uReport的价值在于填补了这样一个市场空白:开源 ...

  9. Apache Kyuubi 在B站大数据场景下的应用实践

    01 背景介绍 近几年随着B站业务高速发展,数据量不断增加,离线计算集群规模从最初的两百台发展到目前近万台,从单机房发展到多机房架构.在离线计算引擎上目前我们主要使用Spark.Presto.Hive ...

  10. PHP中substr() mb_substr() mb_struct()的区别和用法

    PHP substr() 函数可以分割文字,但要分割的文字如果包括中文字符往往会遇到问题,这时可以用mb_substr()/mb_strcut这个函 数,mb_substr() /mb_strcut的 ...