实数用于编写类型 float、double 和 decimal 的值。
-
real-literal:(实数:)
-
decimal-digits .
decimal-digits exponent-partopt real-type-suffixopt(十进制数字
.
十进制数字
指数部分可选
实数类型后缀可选)
. decimal-digits exponent-partopt real-type-suffixopt(. 十进制数字 指数部分可选 实数类型后缀可选)
decimal-digits exponent-part real-type-suffixopt(十进制数字 指数部分 实数类型后缀可选)
decimal-digits real-type-suffix(十进制数字 实数类型后缀)
exponent-part:(指数部分:)
-
e
signopt decimal-digits(e 符号
可选 十进制数字)
E signopt decimal-digits(E 符号 可选 十进制数字)
sign: one of(符号:下列之一)
- + - real-type-suffix: one of(实数类型后缀:下列之一)
- F f D d M m
如果未指定实数类型后缀,则实数的类型为 double。否则,实数类型后缀确定实数的类型,如下所示:
- 以
F或f为后缀的实数的类型为float。例如,实数1f、1.5f、1e10f和123.456F的类型都是float。 - 以
D或d为后缀的实数的类型为double。例如,实数1d、1.5d、1e10d以及123.456D的类型都是double。 - 以
M或m为后缀的实数的类型为decimal。例如,实数1m、1.5m、1e10m和123.456M的类型都是decimal。此实数通过取精确值转换为decimal值,如果有必要,用银行家舍入法(第 4.1.7 节)舍入为最接近的可表示值。保留该实数的所有小数位数,除非值被舍入或者值为零(在后一种情况中,符号和小数位数为 0)。因此,实数2.900m经分析后将形成这样的一个小数:符号为0、系数为2900,小数位数为3。
如果一个给定的实数不能用指定的类型表示,则会发生编译时错误。
使用 IEEE“就近舍入”模式确定类型 float 或 double 的实数的值。
注意在实数中,小数点后必须始终是十进制数字。例如,1.3F 是实数,但 1.F 不是。
[@more@]来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8781179/viewspace-924529/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8781179/viewspace-924529/
本文详细介绍了C#中实数类型的定义与使用方法,包括float、double和decimal三种类型的特点及如何通过不同后缀指定具体的数值类型。此外,还说明了数值在不同情况下可能发生的编译时错误。

被折叠的 条评论
为什么被折叠?



