检查变量是否达到最大值 - 行为
Check if variable reached max value - behauvior
大家好,我有两个问题。
1) 当(例如认为整数 maxValue 为 +- 100 )
时变量如何起作用
sum : integer;
sum+=200;
总和达到整数最大值。下一个问题来了
2) 在 delphi 中有没有一种方法可以在这种情况发生时捕捉到并做一些其他的事情并像 try except 一样熟悉?或者,如果不能,有没有办法用 if then 来做到这一点?
要获取 Integer 类型的最大和最小范围,您可以使用以下代码:
var
myMin, myMax: Integer;
begin
myMin := Low(Integer);
myMax := High(Integer);
end;
EIntOverflow 引发异常:
for integer calculations whose results are too large to fit in the
allocated register.
如果您尝试过:
myMax := High(Integer) + 1;
该值将切换为 Low(Integer)
的值
P.S. Delphi.
中没有 +=
复合赋值运算符
大家好,我有两个问题。
1) 当(例如认为整数 maxValue 为 +- 100 )
sum : integer;
sum+=200;
总和达到整数最大值。下一个问题来了
2) 在 delphi 中有没有一种方法可以在这种情况发生时捕捉到并做一些其他的事情并像 try except 一样熟悉?或者,如果不能,有没有办法用 if then 来做到这一点?
要获取 Integer 类型的最大和最小范围,您可以使用以下代码:
var
myMin, myMax: Integer;
begin
myMin := Low(Integer);
myMax := High(Integer);
end;
EIntOverflow 引发异常:
for integer calculations whose results are too large to fit in the allocated register.
如果您尝试过:
myMax := High(Integer) + 1;
该值将切换为 Low(Integer)
P.S. Delphi.
中没有+=
复合赋值运算符