求救:由于Comm通讯的底层接口获取的int型整数数据是C++写的,现在要用java调用C++的接口int型出现溢出,即怎么获取大于2147483648(c++可
如:在c++中定义一个变量:
int temp = 2147483649;
但是在java当中就是不行,他得出的是负数,怎么办?在java中有没有好办法?
java int temp = 2147483649;出错,整数太大了?
现在这个问题很急呀,写过底层通讯的人有没有遇到过?
问题点数:100、回复次数:8Top
1 楼cyberwjw(cyberwjw)回复于 2004-04-03 09:43:09 得分 0
快来up一下Top
2 楼Acylas(Acylas)回复于 2004-04-03 10:00:40 得分 20
那就用long型啊Top
3 楼cyberwjw(cyberwjw)回复于 2004-04-03 10:14:24 得分 0
long型也是一样的报错,不知道为什么?Top
4 楼aaronyes(生活需要进步)回复于 2004-04-03 15:12:52 得分 10
UPTop
5 楼darksmile(黑色长袍)回复于 2004-04-03 15:41:02 得分 20
用BigInteger
例子:
import java.math.BigInteger;
public final class Hello {
public static void main(String[] args) {
BigInteger temp = new BigInteger("2147483649");
System.out.println(temp);
}
}
Top
6 楼darksmile(黑色长袍)回复于 2004-04-03 15:43:56 得分 20
等等,刚才没看清位数,不用BigInteger的,用long就可以了。
public static void main(String[] args) {
long temp = 2147483649L;
System.out.println(temp);
}
看到214783649后面的L了没有?Top
7 楼linhaibin(寄悟)回复于 2004-04-03 16:03:33 得分 10
upTop
8 楼Acylas(Acylas)回复于 2004-04-04 13:23:12 得分 20
int型的最大值是2147483648,
你用long型肯定不会错的Top




