目录
字节
在我们代码时候会经常发现一些数值被私吞或者冒出许多小数点后的多位0,这时候我们会疑惑,为什么?有的新手可能和我一样有过这样的疑惑,看一些视频教学我们也没有见到过详细的描述的话,那看看我的描述,有问题请大家们的乐意指导。
什么是字节?
字节是计算机存储的计量单位,每个字节有8位组成,每个位要么为0要么为1,是为二进制,转化为十进制那我们的一个字节有2^8等于256个数,因为我们计算机从0开始计数,所以我们一个字节的数值范围为0~255.
那我们有时候会疑问,那什么时候可以准确用字节的多少来保证自己的运算准确,那我们可以大概说一个范围,因为每一个软件对数据类型的字节的多少有不一样的标准。
数据类型的字节
整数类型
int 2
unsigned int 2
short int 2
unsigned short int 2
long int 4
unsigned long 4
这里我们可能陌生与unsigne这个单词代表的含义,他就是无符号型,让你的数范围处于正数内,因为unsigne的存储单元最高位不做为符号单位,用来做储存数据,结果如
int 范围为 -2^15 ~ 2^15-1
unsigned 范围为0 ~ 2^16-1
实型类型(浮点)
float 4 有效数字7个
double 8 有效数字16个
long double 16 有效数字19个
这里我们有疑问,我为什么我的数值范围明明有很大,却有有效数字,原因简单,电脑不愿意给。所以我们能提供的有效数字就那麽多,多余的通通不被电脑看见。(这时候你要记住浮点类型不止有小数点才算浮点类型,指数形式也是浮点类型。)
字符型数据
分为字符常量和字符变量。
字符常量
字符常量是用“ ‘ ”括起来的一个字符,不能用双引号或其他括号
只能是单个字符,不能是字符串
字符可以是数字,但被定义后不能参加运算 如0和’0‘
占一个字节
字符串常量
用双引号括起来的字符串
占字节为字符串中字节数加一的字节。
字符变量
char变量;
char x,y;
x='a'
y='b'
printf("%d,%d'",x,y);
这个结果一定是a b关于ASCII的值。对于c++是没有用的。