C++_CH04_变量

C++_CH04_变量

1.1变量类型

变量类型决定了变量分配空间的大小。
用int类型举例,如果是32位的计算机,一个int类型是4个字节,一个字节是8bit,每一位都有0或1两种可能。而对于单纯的int类型(不是unsigned int),首位表示正还是负。因此共31位来存储数字。则取值范围为

-2^31~2^31

在这里插入图片描述

因此能存储的数字大概是正负21亿。

如果不想要负数,就是将表示符号的首位变成跟其他位一样。即无符号整型(unsigned int),此时的取值范围是:

0~2^32

在这里插入图片描述
这里以int和unsigned int举例。C++和C语言是一样的,具体关于变量的类型和他相关的反码、原码、补码,可以看我写的C语言博客:
C语言和C++的数据存储

1.2C++有而C语言没有的类型--------bool

bool类型取值true \false。
0为false,除此之外都是true。

#include <iostream>

int main()
{
	bool var = true;
	bool var2 = false;
	std::cout<<var<<std::endl;
	std::cout<<var2<<std::endl;
	std::cin.get();
}

output:

1
0

bool类型虽然能够用一个bit就可以表达(0,1)但是计算机寻址只能寻找到字节。因此一个bool类的空间大小为1字节。为了证明这一点,我们用sizeof()来看看:

#include <iostream>

int main()
{
	bool var = true;
	bool var2 = false;
	std::cout<<sizeof(var)<<std::endl;
	std::cout<<sizeof(bool)<<std::endl;
	std::cout<<sizeof(true)<<std::endl;
	std::cin.get();
}

output:

1
1
1

可以修改sizeof()里面的变量类型,来看看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值