请教:C++下面, int 值的范围是多少?

软件和网站开发以及相关技术探讨
回复
mrguo
帖子: 129
注册时间: 2007-05-28 5:27
送出感谢: 3 次
接收感谢: 0

请教:C++下面, int 值的范围是多少?

#1

帖子 mrguo » 2010-11-06 21:18

目前的开发平台是ubuntu10.04(amd64) + 默认GCC + codeblock.

这个取值范围, 与平台\系统\编译器有关吗?

多谢!!!
许庚庚
帖子: 15
注册时间: 2010-05-02 18:54
送出感谢: 0
接收感谢: 0

Re: 请教:C++下面, int 值的范围是多少?

#2

帖子 许庚庚 » 2010-11-09 16:50

除去正负标志位,正的能到2的31次方,与编译器有点关系,主要是看你的系统平台
kmeng
帖子: 85
注册时间: 2007-03-08 9:57
来自: Rockville MD
送出感谢: 0
接收感谢: 0
联系:

Re: 请教:C++下面, int 值的范围是多少?

#3

帖子 kmeng » 2010-11-12 3:21

/usr/include/limits.h
里面定义了最大值和最小值
localcpp
帖子: 1
注册时间: 2010-10-27 13:26
送出感谢: 0
接收感谢: 0

Re: 请教:C++下面, int 值的范围是多少?

#4

帖子 localcpp » 2010-11-22 17:09

可以用sizeof()函数测试一下 std::cout<<sizeof(int);这个和计算机的位数有关 一般int是4位的 也有2位的
Becks_cf
帖子: 4
注册时间: 2010-10-16 14:18
送出感谢: 0
接收感谢: 0

Re: 请教:C++下面, int 值的范围是多少?

#5

帖子 Becks_cf » 2010-11-23 11:11

不同系统占不同的字节数,多数平台上int占4个字节
dshbusiness
帖子: 1831
注册时间: 2009-04-03 15:10
送出感谢: 0
接收感谢: 0

Re: 请教:C++下面, int 值的范围是多少?

#6

帖子 dshbusiness » 2010-11-23 11:15

用sizeof看,然后自己计算就ok了
头像
farta
帖子: 443
注册时间: 2009-02-24 2:48
送出感谢: 0
接收感谢: 0

Re: 请教:C++下面, int 值的范围是多少?

#7

帖子 farta » 2010-11-23 14:14

最正点的办法是sizeof自己看下。一般64位系统中,int是32位,long是64位。
头像
i_NIX
帖子: 450
注册时间: 2008-02-11 15:46
送出感谢: 0
接收感谢: 0

Re: 请教:C++下面, int 值的范围是多少?

#8

帖子 i_NIX » 2010-11-24 21:56

对嘛,这个问题当然是自己编写个小程序验证了,简单,方便
Google Talk群组,请来<雨云>一番!
主题:UbuntuLinux编程科幻、民主、科学等。
添加 rain-cloud@appspot.com 为好友(然后say hi,并等待验证)
参见 http://goo.gl/xIpxH

Twitter:http://twitter.com/nixzhu
wholelife
帖子: 7
注册时间: 2008-04-01 18:13
送出感谢: 0
接收感谢: 0

Re: 请教:C++下面, int 值的范围是多少?

#9

帖子 wholelife » 2010-12-18 18:27

kmeng 写了:/usr/include/limits.h
里面定义了最大值和最小值
# define INT_MIN (-INT_MAX - 1)
# define INT_MAX 2147483647
# define UINT_MAX 4294967295U

# if __WORDSIZE == 64
# define LONG_MAX 9223372036854775807L
# else
# define LONG_MAX 2147483647L
# endif
# define LONG_MIN (-LONG_MAX - 1L)

取自ubuntu10.10 32位操作系统
2^31=2147483647+1
头像
momo-erika
帖子: 22
注册时间: 2010-12-20 12:10
系统: ubuntu,centos,bsd
送出感谢: 0
接收感谢: 0

Re: 请教:C++下面, int 值的范围是多少?

#10

帖子 momo-erika » 2010-12-20 12:16

用size_t,在32位下就是int在64位下就是__w64 int
回复

回到 “软件/网站开发”