我正在寻找C#和VB.Net的列表数字类型初始化标识符.
例如:
Dim x = 1D 'Decimal' Dim y = 1.0 'initializes to float'
这是清单:
标识符不区分大小写
VB.Net
Int32 = 1, I Double = 1.0, R, 1.0e5 Decimal = D Single = F, ! Int16 = S UInt64 = L, UL
C#
C#规范的第1.8节包含这些值.
整数型后缀:U u L l UL Ul uL ul LU Lu lU lu之一
real-type-suffix:F f D d M m之一
第2.4.4.2节详细阐述了整数类型:
整数文字的类型确定如下:
如果文字没有后缀,则它具有这些类型中的第一个,其值可以表示为:int,uint,long,ulong.
如果文字后缀为U或u,则它具有这些类型中的第一个,其值可以表示为:uint,ulong.
如果文字后缀为L或l,则它具有这些类型中的第一个,其值可以表示为:long,ulong.
如果文字后缀为UL,U1,uL,ul,LU,Lu,lU或lu,则为ulong类型.
第2.4.4.3节对Real类型进行了详细说明:
如果未指定实际类型后缀,则实数的类型为double.否则,实际类型后缀确定实际文字的类型,如下所示:
以F或f为后缀的实数是float类型.例如,文字1f,1.5f,1e10f和123.456F都是float类型.
以D或d为后缀的实数是double类型.例如,文字1d,1.5d,1e10d和123.456D都是double类型.
以M或m为后缀的实数是十进制类型.例如,文字1m,1.5m,1e10m和123.456M都是十进制类型.通过获取精确值将此文字转换为十进制值,并在必要时使用银行家的舍入舍入到最接近的可表示值(第4.1.7节).除非值被舍入或值为零(在后一种情况下,符号和比例将为0),否则将保留文字中明显的任何比例.因此,将解析文字2.900m以形成带符号0,系数2900和比例3的小数.
类似地,VB规范包含Integer和Floating point文字的详细信息.
对于整数:
ShortCharacter :: = S IntegerCharacter :: =
I
LongCharacter :: = L.
对于浮点数:
SingleCharacter :: = F DoubleCharacter :: =
R
DecimalCharacter :: = D.