【发布时间】:2021-10-22 13:41:48
【问题描述】:
是否有可以应用于大多数语言的算法来确定执行计算时是否会溢出类型大小?
例如,如果在 Java 中给出以下代码片段(尽管我再次寻找任何语言的通用方法)
long variable = 2;
while(true){
variable = variable * Generalclass.function();
}
假设 Generalclass.function() 将返回导致变量增加的东西,最终变量会溢出,那么如果 Generalclass.function() 的属性未知(properties除了增加变量的值)。请注意,变量声明为 long,因此仅检查较大的数据类型将不起作用,因为不存在此类数据类型。
【问题讨论】:
-
考虑通过添加与您的问题相关的适用脚本或编程语言的标签来编辑您的问题。
-
通常您知道结果应该落入的域:例如,此外,如果两个数字都是正数,则结果应该大于其中一个。如果结果不在预期的域中,则它已溢出。但是您只能通过实际执行计算来使用它。在计算和生活中一样,试图预测未来注定要失败。
标签: java computer-science