网站首页 > 教程分享 正文
一般来说,无论是想要转行成为C++开发工程师,还是合格的C++开发工程师,都需要了解和数据C++基础知识。接下来小编带你一起了解下C++变量类型:
什么是变量?
变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。
在计算机程序语言中,变量指的是为程序中的数据提供的内存空间的名称。也就是说只要你在程序中创建了一个变量,不管后面有没有使用到,编译系统就都会自动的在内存中开辟出一个空间用来存放你需要保存的值,而变量就是我们给这个空间所起的名字。如下我们创建一个变量取名num,赋值为10。
int num = 10;
变量在程序中如何使用?
程序中声明变量:
格式一:数据类型变量名1,变量名2,变量名3,……;
格式二:数据类型变量名=值;
int num1,num2,num3;//声明变量num1 num2 num3
int num = 10;//声明变量num,并赋值为10
变量创建后实际发生了什么?
变量被创建出来之后,不管会不会使用,其实都是在内存中开辟出一块对应的空间。这个空间的大小根据不同的数据类型而不同。变量的名字作为这个空间的名字,这个变量的值被保存在这个空间内。
变量类型有哪些?
C++中的基本数据类型有:整数类型、浮点类型、字符类型、布尔类型。
一、整数类型(分为有符号和无符号两种):整数类型保存的是一些整数,例如:-1-2-30123……,但是由于数值的大小范围,又将整数类型分为以下几种。
1、整型类型:int。
Int类型共占4字节,32个比特位。从左往右第一位为符号位,0代表正数、1代表负数。所以int表示的数据范围是:-(2^31)—(2^31)-1,即-2147483648—2147483647。
2、短整型类型:short。
short类型共占2字节,16个比特位。从左往右第一位为符号位,0代表正数、1代表负数。所以short表示的数据范围是:-(2^15)—(2^15)-1,即-32768—32767。
3、长整型类型:long。
编译系统为32位时,long类型和int类型相同;编译系统为16位或64位时,则不相同。一般认为,long>=int
4、长长整型类型:longlong。
Longlong类型共占8字节,64个比特位。从左往右第一位为符号位,0代表正数、1代表负数。所以longlong表示的数据范围是:-(2^63)—(2^63)-1。
二、浮点类型:浮点类型保存的是小数。浮点类型分为三类:单精度浮点类型float、双精度浮点类型double、长精度浮点类型longdouble
1、单精度浮点类型:float
float占位4字节,共32个比特位。其中1位为符号位(0代表正数、1代表负数),8位为指数位,23位为尾数位。
Float取值范围:-3.402823466*1038—3.402823466*1038
8位指数可以表示-128到127
有效数字最大是全1,近似乘2
所以整个数的最大值是2乘以2^127,约等于3.4乘10^38
Float精度范围
23位尾数位,2^23=8388608,共7位数,所以float的精度范围在6-7位小数,6位为绝对精确。
2、双精度浮点类型:double
double占位8字节,共64个比特位。其中1位为符号位(0代表正数、1代表负数),11位为指数位,52位为尾数位。
double取值范围:-1.7976931348623158*10308—1.7976931348623158*10308
11位指数可以表示-1024到1023
有效数字最大是全1,近似乘2
所以整个数的最大值是2乘以2^1023,约等于1.7976931348623158*10308
doublet精度范围
52位尾数位,2^52共16位数,所以double的精度范围在15-16位小数,15位为绝对精确。
3、长精度浮点类型:longdouble
Longdouble占位12字节,共96个比特位
Longdouble取值范围:-1.2*E4932—1.2*E4932
Longdouble的精度范围在19-20位小数,19位为绝对精确。
三、字符类型:char(char类型也分为有符号和无符号之分):字符类型保存的就是一些字母、数字、字符等符号。每一个字符占用1字节,共8个比特位。因为保存的是一些字母等符号,所以在计算机内存中仍然是以整数值的形式保存,即以ASCII码形式保存。
同理,从左往右第一位为符号位(0代表正数、1代表负数)所以取值范围为:-2^7—2^7-1。
提到字符类型,还有一点需要注意:“转义字符”:是为了进行某些特殊格式的控制。
四、布尔类型:bool。布尔类型是一种表示逻辑的数据类型,只有两个值:
true表示真、false表示假;
对应数值为:true代表1、false代表0;
#include<iostream>
using namespace std;
int main(){
bool flag = true; //声明变量flag并赋值为true
bool flag1 = false; //声明变量flag1并赋值为false
return 0;
}
猜你喜欢
- 2024-10-22 零基础|西门子博途TIA软件入门指南-变量
- 2024-10-22 变量、常量、数据类型、运算符(常量和变量都有数据类型对吗)
- 2024-10-22 Python | 变量如何定义,数据类型介绍
- 2024-10-22 你知道Python的变量类型有多少中吗? #Python变量类型
- 2024-10-22 Furein平台-智能合约根底言语(五)——变量类型
- 2024-10-22 数据的基本类型和变量(基本类型)(基本数据类型举例)
- 2024-10-22 Python(第三课 1 - 2)变量类型和数据类型
- 2024-10-22 JAVA变量类型(java变量类型检测)
- 2024-10-22 Python常用变量类型的知识汇总(python常见的变量)
- 2024-10-22 分类变量(类别变量Categorical Variables)
你 发表评论:
欢迎- 最近发表
-
- 有了这份900多页的Android面试指南,你离大厂Offer还远吗?
- K2 Blackpearl 流程平台总体功能介绍:常规流程功能
- 零基础安卓开发起步(一)(安卓开发入门视频)
- 教程:让你的安卓像Windows一样实现程序窗口化运行
- Android事件总线还能怎么玩?(事件总线有什么好处)
- Android 面试被问“谈谈架构”,到底要怎样回答才好?
- Android开发工具Parcel和Serialize
- Android 中Notification的运用(notification widget安卓)
- Android退出所有Activity最优雅的方式
- MT管理器-简单实战-去除启动页(mt管理器怎么去除软件弹窗)
- 标签列表
-
- css导航条 (66)
- sqlinsert (63)
- js提交表单 (60)
- param (62)
- parentelement (65)
- jquery分享 (62)
- check约束 (64)
- curl_init (68)
- sql if语句 (69)
- import (66)
- chmod文件夹 (71)
- clearinterval (71)
- pythonrange (62)
- 数组长度 (61)
- javafx (59)
- 全局消息钩子 (64)
- sort排序 (62)
- jdbc (69)
- php网页源码 (59)
- assert h (69)
- httpclientjar (60)
- postgresql conf (59)
- winform开发 (59)
- mysql数字类型 (71)
- drawimage (61)
本文暂时没有评论,来添加一个吧(●'◡'●)