X
Xylitol
Unregistered / Unconfirmed
GUEST, unregistred user!
代码如下:
x:longint;
y:Currency;
z:Currency;
x:= strtoint('$'+s);//S的值为:208D256D 即把208D256D 转化为十进制。
y:=x*180;
z:=y/2147483648;
代码是想完成这样一个运算:先把一十六进制(四字节)的数转化为十进制,乘与180,再除于2的31次方(即2147483648),可结果总是溢出!无论y和z的类型为何,都是溢出!请问是什么原因?有什么解决的方法吗?结果应该是45.775270992486190071418774994053才对啊!
x:longint;
y:Currency;
z:Currency;
x:= strtoint('$'+s);//S的值为:208D256D 即把208D256D 转化为十进制。
y:=x*180;
z:=y/2147483648;
代码是想完成这样一个运算:先把一十六进制(四字节)的数转化为十进制,乘与180,再除于2的31次方(即2147483648),可结果总是溢出!无论y和z的类型为何,都是溢出!请问是什么原因?有什么解决的方法吗?结果应该是45.775270992486190071418774994053才对啊!