c语言 int最大值是多少??

我用这试了下输出结果是4int和longint、unsigendlongint结果都是4shortint结果是2#include<stdio.h>intmain(void... 我用这试了下 输出结果是 4 int 和 long int 、unsigend long int 结果都是4 short int 结果是2
# include <stdio.h>
int main(void)
{
int i = sizeof(unsigned long int);

printf("i = %d\n",i);
return 0;
}
展开
 我来答
鹿宝怀挺
2018-05-04 · TA获得超过4825个赞
知道答主
回答量:38
采纳率:70%
帮助的人:1.1万
展开全部

当无符号0以二进制储存在内存中的时候,每一位都为0,以32位int为例,(unsigned int)0的二进制为:

00000000000000000000000000000000

按位取反(~)后,变成:

11111111111111111111111111111111

此时的十进制为:

4294967295

除以2(因为int类型中有一半表示负数且比正数多一个)之后为:

2147483647

即为32位int类型最大值。

C语言中最大的整型数据类型是long类型,占4个字节


C中短整型和整型均占2个字节,取值范围是 -32768 ~~~ 32767


长整型占4个字节,取值范围是 -2147483648 ~~~~ 2147483647


如果是无符号数的话,可以表示的数据就是


短整型和 整型:  0--- 65535
长整型:             0---4294967295


在C语言中如果一个数很大的话,超过最大的长整型,可以使用double来存储,这样不会影响运算精度。

俊永翼F
高粉答主

2020-03-02 · 说的都是干货,快来关注
知道答主
回答量:8.1万
采纳率:3%
帮助的人:4005万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
门谨拱醉香
2019-02-18 · TA获得超过3404个赞
知道大有可为答主
回答量:2985
采纳率:24%
帮助的人:425万
展开全部
int最大值,根据编译器类型不同而变化。
1
对于16位编译器,int占16位(2字节)。
int的最大值为32767.
2
对于32位和64位编译器,int占32位(4字节)。
int的最大值为2147483647
3
可以通过打印sizeof(int)查看平台对应的int占用字节数。乘8后即为位数。
最高位为符号位,如位数为n,则最大值为
2^(n-1)
即2的n-1次幂。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式