问答详情
源自:4-15 编程练习

if(num>0&&num<=999999999){

为什么输入十个九报错呢

提问者:weibo_比不赢小学生bbbb_04152438 2016-10-12 20:47

个回答

  • 大漠雄鹰94
    2016-10-13 10:58:45

    循环范围太大,导致溢出了

  • 戀上石卒石卒念
    2016-10-12 21:51:26

    4个字节能表示的最大整数是2^31-1.

    在上述中2^31-1表式2的31次方减1.

    字节(Byte)是计算机信息技术用于计量存储容量和传输容量的一种计量单位,1个字节等于8位二进制。

    任何数据类型的数组都需要 20 个字节的内存空间,加上每一数组维数占 4 个字节,再加上数据本身所占用的空间。数据所占用的内存空间可以用数据元数目乘上每个元素的大小加以计算。例如,以 4 个 2字节之 Integer 数据元所组成的一维数组中的数据,占 8 个字节。这 8 个字节加上额外的 24 个字节,使得这个数组所需总内存空间为 32 个字节。包含一数组的 Variant 比单独的一个数组需要多 12 个字节。


  • 戀上石卒石卒念
    2016-10-12 21:41:22

    int 整数 4个字节 十个九超过4个字节了

  • 乙亥4151147
    2016-10-12 21:16:24

    num>=0

  • 慕后端7986574
    2016-10-12 21:11:41

    因为int类型    范围为-2147483648~2147483647

    十个九超出范围,可以把int改成long就不会报错了

  • weixin_慕工程3255869
    2016-10-12 21:11:30

    num不定义类型,int才是定义类型的,9999999999太大,要用long长 整型

  • 慕运维7903739
    2016-10-12 21:06:40

    num定义的是整型吗?溢出了吧。。。