C# – 数字后缀

可能重复:
十进制类型的声明后缀

嘿大家,

在下面的代码片段中; RewardValue是小数:

dto.RewardValue = 1.5; 

现在,这给了我以下错误:

“无法将源类型double转换为目标类型decimal”

有意义,并且可以通过将代码行更改为以下内容来轻松修复:

 dto.RewardValue = 1.5m; 

现在,“m”将其转换为小数,一切都很好。

有人知道我能在哪里找到所有那些“m”型操作符的列表吗? (如果你能让我知道那些适当的术语是什么,那将不胜感激)

编辑:感谢HCL和MartyIX让我知道这些被称为“后缀”

我相信你要找的术语是“后缀”。

例子:

 1; // int 1.0; // double 1.0f; // float 1.0m; // decimal 1u; // uint 1L; // long 1UL; // ulong 

这真是一个非常小的清单。

 F: float D: double U: uint L: long UL: ulong M: decimal 

当然,一个普通的整数值本身被解释为一个int ,除非它太大而不能成为一个int在这种情况下它是一个long ,除非它太大了long在这种情况下它是一个ulong 。 如果它对于ulong太大,则不能将其用作文字(据我所知)。

其中带有小数点的值会自动解释(如您自己发现的那样)为double

我相信它被称为“数字文学”: http : //www.blackwasp.co.uk/CSharpNumericLiterals.aspx

http://dotnetperls.com/suffix-examples – 他们称之为numeric suffixeshttp://msdn.microsoft.com/en-us/library/b1e65aza(VS.71).aspx – 这里也是后缀)

后缀类型:unsigned int

性格:你

示例:uint x = 100U;

后缀类型:长

性格:L

示例:long x = 100L;

后缀类型:unsigned long

特征:UL

示例:ulong x = 100UL;

后缀类型:浮点数

性格:F

示例:float x = 100F;

后缀类型:双

性格:D

示例:double x = 100D;

后缀类型:十进制

性格:M

示例:十进制x = 100M;

请查看http://msdn.microsoft.com/en-us/library/364x0z75.aspx和http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx

希望有所帮助,