gpt4 book ai didi

Delphi Berlin 10.1 除零异常缺失

转载 作者:行者123 更新时间:2023-12-03 14:57:02 24 4
gpt4 key购买 nike

我很惊讶不是 get 除以零异常。我该如何取回它?

Berlin 10.1 最近安装,新项目,

procedure TForm1.Button1Click(Sender: TObject);
var
a: Double;
begin
a := 5/0; // No exception
ShowMessage(a.ToString); // -> 'INF'
end;

最佳答案

a := 5/0;

用技术语言术语来说,表达式5/0constant expression .

A constant expression is an expression that the compiler can evaluate without executing the program in which it occurs. Constant expressions include numerals; character strings; true constants; values of enumerated types; the special constants True, False, and nil; and expressions built exclusively from these elements with operators, typecasts, and set constructors.

因此,该表达式由编译器计算,而不是在运行时计算。因此其评估由编译时规则决定,不受运行时浮点单元异常掩码的影响。

这些规则规定,正值除以零等于+INF,这是一个特殊的 IEEE754 值。如果您将表达式更改为至少有一个不是常量表达式的参数,那么它将在运行时进行计算,并会引发除零异常。

关于Delphi Berlin 10.1 除零异常缺失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47611635/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com