|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2018/1/16 14:03:35 |
标题: |
|
加入我的收藏 |
楼主: |
procedure TForm1.btn1Click(Sender: TObject); var LInt :Double; begin LInt := 20000000000 * 560; end;
20000000000
少一个0就报: [dcc32 Error] Unit1.pas(30): E2099 Overflow in conversion or arithmetic operation
搞不懂啊, 多几个0反而能够编译通过.
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行. |
作者: |
|
2018/1/16 14:21:40 |
1楼: |
可能的原因。 计算过程,以为你是 某一个低精度的数值,计算结果超过了这个精度无法保存到你看不到的临时变量中。 建议的解决办法。 强制类型转换。 或者用临时变量,临时变量的类型采用最大精度。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
|
2018/1/16 15:09:17 |
2楼: |
最大精度是哪个类型??
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
|
作者: |
|
2018/1/16 16:18:38 |
3楼: |
LInt := Int64(20000000000) * 560;
----------------------------------------------
-
|
作者: |
|
2018/1/16 21:16:22 |
4楼: |
1: LInt: Int64; 2: LInt := 2000000000.0 * 560; 3. LInt := 2000000000 * 560.0; 4. 见楼上。 5. LInt := Double(2000000000) * 560; ...
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2018/1/17 9:41:20 |
5楼: |
浮点型是哪个类型??
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
|
作者: |
|
2018/1/17 11:10:03 |
6楼: |
搜索一下就知道了,给你一个网址:https://www.cnblogs.com/doit8791/archive/2012/05/16/2505554.html
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
|