2

我目前正在将 VB6 项目转换为 C#,并且我注意到 VB6 允许您#在计算期间在整数后添加 a 以将其标记(并转换)为双精度。

例子:

If valueAsDeg >= (1# / 60#) Then Err.Raise - 1

在 C# 中是否有类似的方法可以做到这一点?

4

1 回答 1

4

使用后缀“D”,例如1D

默认情况下,赋值运算符右侧的实数文字被视为双精度值。但是,如果您希望将整数视为双精度数,请使用后缀 d 或 D。

http://msdn.microsoft.com/en-US/library/678hzkk9(v=vs.110).aspx

double result = 1 / 60;
Console.WriteLine( result );

输出:0

double result = 1D / 60D;
Console.WriteLine( result );

输出:0.0166666666666667

float请注意, “F”、decimal“M”和“L”有类似的后缀,long并且支持无符号后缀

于 2013-04-05T22:47:09.910 回答