【发布时间】:2013-10-13 11:17:20
【问题描述】:
我知道波浪号会翻转每一位,但如果我这样做 int num = ~0
为什么结果是 num = -1 ,而不是 int 或 unsigned int 的最大值?
【问题讨论】:
我知道波浪号会翻转每一位,但如果我这样做 int num = ~0
为什么结果是 num = -1 ,而不是 int 或 unsigned int 的最大值?
【问题讨论】:
但这是unsigned的最大值:
#include <iostream>
#include <limits>
int main() {
std::cout << ( unsigned(-1) == std::numeric_limits<unsigned>::max() )
<< std::endl;
return 0;
}
【讨论】: