delphi - 如何最好地将整数转换为浮点值而不分配给变量?

标签 delphi

我想知道如何从整数转换为浮点值,而不分配给中间变量。有问题的代码如下所示:

Format('Theoretical peak scaling %6.2f', [ThreadCount])

这显然在运行时失败,因为 ThreadCount 是一个整数。

我尝试了显而易见的

Format('Theoretical peak scaling %6.2f', [Double(ThreadCount)])

编译器会拒绝它

E2089 Invalid typecast

我知道我可以写

Format('Theoretical peak scaling %6.2f', [ThreadCount*1.0])

但这读起来很差,只会诱使 future 的维护者删除错误的乘法。

有谁知道有没有一种干净的方法可以在没有中间变量的情况下做到这一点,并且可以让 future 的读者清楚地了解代码的意图?

最佳答案

这可能感觉很愚蠢......但如果它是一个整数,为什么不只是:

Format('Theoretical peak scaling %3d.00', [ThreadCount]);

小数点后除了零之外什么都不会,对吗?

关于delphi - 如何最好地将整数转换为浮点值而不分配给变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16068553/

相关文章:

Delphi 应用程序在调试器外部崩溃,但在内部不崩溃

delphi - 带分离器的面板布局

Delphi TAdoQuery - 多次插入?

multithreading - 使用 OmniThreadLibrary 并行写入数组比串行写入慢

delphi - 多项目条件编译Delphi

delphi - 使用Delphi 2010编写TCP IP消息系统(客户端/服务器)的建议

delphi - Fxxx私有(private)类名前缀约定从何而来?

delphi - 如何查找和统计文本字符串中的单词?

windows - 在delphi中逆向加密

delphi - 在执行 ShellExecute 之前等待?