unsigned int的最大值

时间:2013-04-08 21:22:42

标签: c++ int

这就是我想要的:

unsigned int max_unsigned_int_size;
max_unsigned_int_size = ???;

我该怎么做?

6 个答案:

答案 0 :(得分:35)

C

#include <limits.h>
unsigned int max_unsigned_int_size = UINT_MAX;

C++

#include <limits>
unsigned int max_unsigned_int_size = std::numeric_limits<unsigned int>::max();

答案 1 :(得分:15)

unsigned int max_unsigned_int_size = -1;

保证做正确的事。无符号类型的算术总是模数。

但在具体情况下,你总是应该使用UINT_MAX

答案 2 :(得分:6)

您正在寻找

#include <limits>
std::numeric_limits<unsigned int>::max();

如果您想要大小,sizeof会这样做,请乘以CHAR_BITS来获取这些位。

另外,有

std::numeric_limits<unsigned int>::digits();

答案 3 :(得分:4)

您需要std::numeric_limits::max()

#include <limits>

...

max_insigned_int_size = std::numeric_limits<unsigned int>::max():

答案 4 :(得分:2)

  • 对于C,该值由limits.h中的UINT_MAX提供。
  • 对于C ++,您也可以使用limits中的std::numeric_limits<unsigned int>::max()

答案 5 :(得分:1)

#include <limits>

max_unsigned_int_size = std::numeric_limits<unsigned int>::max();