2012年(158)
分类: C/C++
2012-11-20 10:56:05
网友评论2012-11-20 10:56:58
Snail
我也遇到这样的问题
unsigned int 的表示的范围:-2^31--2^31-1
代码:int sx = -2147483648;
-2147483648(-2^31)在有符号表示范围内但是编译器报警告warning: "this decimal constant is unsigned only in ISO C90"
修改为 int sx = -2147483647;
或者 int sx = 2147483647;
更或者 int sx = -2147483648u;
都没有警告
难道编译器判读的依据是 -(2^31-1)----2^31-1