关于数据类型的东西有几点听不懂
长整数变量最大到65535,这个有点迷糊,那65536怎么办,
这里说的0-65535是什么意思,只是一个数量么?还是一个数值??
有前辈能够通俗的讲解一下么,复制粘贴的麻烦路过吧!
最好能举例说明下!,谢谢
还有,字节的长度的bits是根据什么来定义的?系统?
关于数据类型的东西有几点听不懂 长整数变量最大到65535,这个有点迷糊,那65536怎么办
答案:1 悬赏:30 手机版
解决时间 2021-02-05 01:01
- 提问者网友:你挡着我发光了
- 2021-02-04 19:05
最佳答案
- 五星知识达人网友:封刀令
- 2021-02-04 20:34
同学你在哪个平台上的长整数最大为65535???
不过抛开平台,我们也可以讨论这个问题。
数据类型的最大值,其实取决于该数据类型在内存中所占的字节数。
比如说在VC系列的编译器中,无符号short类型的变量最大值为65535,因为该类型所占字节数为2,2byte=16bit,2的16次幂等于65536,可以表示0~65535范围内的数值。。。
类似的,无符号long型变量的最大值4294967295,因为该类型有4byte=32bit,2的32次幂等于4294967296,故可以表示范围0~4294967295
而有符号的short类型则是另外一种情况,因为我们需要一个bit来表示正负,所以表示数值大小的bit数只有16-1=15位,其表示范围变成了-32768~32767【以上数字均是我刚用计算器算出来的,不排除操作造成的手误,不过基本原理已经向你表述清楚了,还有什么问题没??】
PS:
以上知识大部分编程入门书籍,如C、汇编都会提及,计算机组成原理等课程也有详细讲解。。。
不过抛开平台,我们也可以讨论这个问题。
数据类型的最大值,其实取决于该数据类型在内存中所占的字节数。
比如说在VC系列的编译器中,无符号short类型的变量最大值为65535,因为该类型所占字节数为2,2byte=16bit,2的16次幂等于65536,可以表示0~65535范围内的数值。。。
类似的,无符号long型变量的最大值4294967295,因为该类型有4byte=32bit,2的32次幂等于4294967296,故可以表示范围0~4294967295
而有符号的short类型则是另外一种情况,因为我们需要一个bit来表示正负,所以表示数值大小的bit数只有16-1=15位,其表示范围变成了-32768~32767【以上数字均是我刚用计算器算出来的,不排除操作造成的手误,不过基本原理已经向你表述清楚了,还有什么问题没??】
PS:
以上知识大部分编程入门书籍,如C、汇编都会提及,计算机组成原理等课程也有详细讲解。。。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯