c语言的int型数据范围和内存中存储是什么?

 我来答
大大的Wiener
2018-03-18 · TA获得超过6.4万个赞
知道大有可为答主
回答量:392
采纳率:90%
帮助的人:33.2万
展开全部

1、nt型为带符号整数类型,对于16位编译器,int占2字节8位;对于32位和64位编译器,int型占4字节32位。不同的占用空间,int型的范围也不同:2字节时,int 范围为-32768~32767;4字节时,int范围为-2147483648~2147483647。

无论是哪种存储方式,均是最高位为符号位,0代表正数,1代表负数。剩余位存储实际值。

2、字符是指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、~!·#¥%……—*()——+等等。在 ASCII 编码中,一个英文字母字符存储需要1个字节。在 GB 2312 编码或 GBK 编码中,一个汉字字符存储需要2个字节。

3、字符型数据在内存中储存的是它的ASCII码值,它是一个字节,所有数据类型在内存中都是以0和1代码二进制储存的,这个原则不会变。

4、在UTF-8编码中,一个英文字母字符存储需要1个字节,一个汉字字符储存需要3到4个字节。在UTF-16编码中,一个英文字母字符或一个汉字字符存储都需要2个字节(Unicode扩展区的一些汉字存储需要4个字节)。在UTF-32编码中,世界上任何字符的存储都需要4个字节。

5、char是C/C++整型数据之一,其它的如int/long/short等不指定signed/unsigned时都默认是signed,char在标准中是unsigned,编译器可以实现为带符号的,也可以实现为不带符号的,有些编译器如pSOS的编译器,还可以通过编译开关来指定它是有符号数还是无符号数。

周文剑eric
2018-01-05 · 超过10用户采纳过TA的回答
知道答主
回答量:19
采纳率:0%
帮助的人:25.3万
展开全部
字节数:int型的位数一开始和操作系统的位数一样,而1字节=8位,所以字节数一般是(操作系统位数/8),但64位系统中由于人们已经习惯int占32位,所以int型字节数如下:16位下2字节,32位和64位下4字节
无符号和有符号:有时候人们需要存储的整数可正可负,这时候就要用有符号的整型存储,也是默认的int类型;有时候只要存储自然数,那么就可以用无符号整型存储,也就是unsigned int,也可以写成unsigned
取值范围:对于n个字节的无符号整型其取值范围为0~2^(n*8)-1,对于n个字节的有符号整型其取值范围为-2^(n*8-1)~2^(n*8-1)-1
至于内存中存储的形式不清楚你的意思,请说具体一点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式