c语言中int型的数超出范围会是怎样的?
1个回答
2022-12-11 · 百度认证:北京惠企网络技术有限公司官方账号
关注
展开全部
C语言中int的取值范围为:-2147483648 ~ 2147483647。超过了这个范围进行赋值,C源代码是无法通过编译的。
下面给出简单的测试代码:
# include <stdio.h>
int main(void)
{
int i = 100000000000000000000000000000000000000000000;
printf("%d\n", i);
return 0;
}
可以看到编译器提示这个定义类型的赋值太大了,导致无法编译成功。
扩展资料
C/C++编程语言中,int表示整型变量,是一种数据类型,用于定义一个整型变量,在不同编译环境有不同的大小,不同编译运行环境大小不同。在32/64位系统中都是32位,范围为-2147483648~+2147483647,无符号情况下表示为0~4294967295。
原因:总位数位32位,符号位占用1位,且每一位只能表示两种状态。int数值位最大只允许31位 = 32 - 符号位 ,所以说:2的31次方 = 2147483648得出了int函数的最大取值范围。
参考资料
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询