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. vue3实现模拟地图上,站点名称按需显示的功能

    很久很久没有更新博客了,因为实在是太忙了,每天都有公司的事情忙不完....... 最近在做车辆模拟地图,在实现控制站点名称按需显示时,折腾了好一段时间,特此记录一下.最终界面如下图所示: 站点显示需求 ...

  2. Built-in COM has been disabled via a feature switch.

    .net 6.0 开始默认关闭com组件 使用时会出现以下信息 Built-in COM has been disabled via a feature switch. See https://aka ...

  3. (数据科学学习手札162)Python GIS神器geopandas 1.0版本发布

    本文完整代码及附件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 大家好我是费老师,就在昨天,Python生 ...

  4. Prometheus监控系统(二)Prometheus部署与使用

    1. Prometheus安装 官网:https://prometheus.io/ 下载地址:https://prometheus.io/download/ Prometheus基于Golang编写, ...

  5. ARM GIC 系列文章学习(转)

    原文来自:骏的世界 ARM GIC(一) cortex-A 处理器中断简介 对于ARM的处理器,中断给处理器提供了触觉,使处理器能够感知到外界的变化,从而实时的处理.本系列博文,是以ARM corte ...

  6. html2canvas 页面截屏

    $(document).ready(function () { $(".example1").on("click", function (event) { va ...

  7. 从Java开发者到.NET Core初级工程师学习路线:C#语言基础

    1. C#语言基础 1.1 C#语法概览 欢迎来到C#的世界!对于刚从Java转过来的开发者来说,你会发现C#和Java有很多相似之处,但C#也有其独特的魅力和强大之处.让我们一起来探索C#的基本语法 ...

  8. Spring5.X的bean的scope作用域

    scope属性 singleton:单例,默认值,调用getBean方法返回是同一个对象,实例会被缓存起来,效率比较高,当一个bean被标识为singleton时候,spring的IOC容器中只会存在 ...

  9. P1546

    [USACO3.1]最短网络 Agri-Net 题意描述 FJ 已经给他的农场安排了一条高速的网络线路,他想把这条线路共享给其他农场.为了用最小的消费,他想铺设最短的光纤去连接所有的农场. 你将得到一 ...

  10. Java-记住上一次访问时间案例

    记住上一次访问时间 1.需求: 1.访问一个Servlet,如果是第一次访问,则提示:您好,欢迎您首次访问 2.如果不是第一次访问,则提示:欢迎回来,您上次访问的时间为:显示字符串 2.分析 1.可以 ...