数据类型int的最小值为-2,147,483,648.
所以,我输入了
int val = -2147483648;
但是,它有一个错误:
unary minus operator applied to unsigned type.result still unsigned
我该如何解决?
解决方法
2147483648超出了您平台的int范围.
使用具有更高精度的类型来表示常量
int val = -2147483648L; // or int val = -2147483648LL;
(取决于哪种类型的精度比平台上的int更高).
或者诉诸好老 – 一招
int val = -2147483647 - 1;