🍿本文主题:C++语法中的变量
🎈更多内容:C++较C的改进
💕我的主页:蓝色学者
文章目录
- 前言
- 概念
- 什么是变量
- 变量名
- 变量类型
- 为什么要有不同数据类型
- 各自数据类型的本质
- 结语
前言
大家好久不见,今天是我们C++修行之路的第二节课,今天我们将一起来学习计算机中最重要,也是最基础的内容——变量。
概念
什么是变量
变量是用来干什么的?,变量其实就是拿来存储数据的!!! |
假如你正在玩一款游戏,那么你的账号信息,地图信息,通过情况等等,这些数据就要被存储起来,而我们变量就是来存储这些数据的!
既然变量是用来存放数据的,生活中,我们把书本放进书包,对于编程来说,我们的数据同样需要一个空间来存储,这个空间就是变量!
变量名
变量和生活中的容器一样都有自己的名字,同样是称液体的杯子,有的叫塑料瓶,有的叫茶杯,有的叫水壶,变量与之相同,也有自己的名字!
变量的命名通常是没有要求的,但应该遵循以下三种原则,例如,我们自定义的变量cout使程序发生了混乱!
- 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成
- 第一个字母必须是 字母 ‾ \underline{\text{字母}} 字母或者 下划线 ‾ \underline{\text{下划线}} 下划线开头。
- 不能使用C++关键字来命名变量,以免冲突
变量类型
是数据就要有自己的类型,设想一下,你的名字绝不可能是一串数字,你的年龄也绝不可能是一行文字,程序中,每种变量都有自己的类型,比如整型用int来表示,字符类型用char来表示,因此在C++中,要表示一个数据,不仅需要有变量,还要指定这个变量的数据类型
int a = 10;//int 表示数据类型为整形,a是我们给变量起的名称,10是这个变量具体的值!
数据类型有多种,常见的有:int(整形)char(字符型)double(双精度浮点型)float(单精度浮点型)long long(长整形)bool(布尔类型)…
当然你可以使用struct关键字来设计自己的类型
为什么要有不同数据类型
不同的变量类型尽管每种变量都有自己的类型,但所有类型本质上的区别只有一个:那就是所表示数字的范围不同
为什么这么说?
众所周知,计算机底层存储的机制都是二进制,也就是说,计算机只认识0和1这两个数字,任何数据本质上都是以二进制的形式来存储的,所以说数据本质上都是同根同源的!
int main()
{
char a = 64;
int b = 10;
cout << a << endl;
cout << b << endl;
}
运行上述代码,我们发现编译器是不会报错给我们的,这也就是说明任何数据本质上存储方式都是一致的,那为什么要有数据类型这个概念呢?
设想一下,现在有两个容器,一个书包 ,一个水桶,我要你帮我装一本书进去,你肯定会用书包去装,所以其实数据类型更像一种约定俗称,是帮助我们程序员更好的设计程序用到的
要存储一个字符,我们就使用char类型变量;要存储一个数字,我们就使用int类型变量!
各自数据类型的本质
🎶理解了为什么要有变量类型,我们来看一下之前的问题:既然他们本质上都存储数字,那为什么数字范围会不同呢? |
类型 | 大小(字节) |
---|---|
char | 1 |
double | 8 |
float | 4 |
long | 8 |
bool | 1 |
我们可以通过sizeof操作符来检验我们的操作是否正确:
int main()
{
cout << sizeof(int) << endl;
cout << sizeof(char) << endl;
cout << sizeof(long) << endl;
cout << sizeof(long) << endl;
cout << sizeof(bool) << endl;
}
结果如图:
根据上面所讲,我们不难算出:
- int类型占64个比特位
- char类型占8个比特位
一个比特位可以存放1或者0,不要忘了,有一个符号位我们要留出来判断是正数还是负数,因此
- int类型实际有63个比特位表示数据
- char类型实际由7个比特位表示数据
不难算出,int的最大取值应该是 231,而char的最大取值是 27
可见不同数据类型在本质上是完全一致的,人为赋予了他们代表不同的字段,他们的大小决定了能表示的范围,仅此而已!
结语
到这里,我们今天讲解的有关变量的内容就结束了,如果你感觉有所收获,可以点赞 + 收藏 +关注 支持一下学者哦~ 我们下次见~