这叫什么?
double d1 = 0d;
decimal d2 = 0L;
float d3 = 0f;我在哪里可以找到我可以使用的字符的引用?如果我想将0转换为short,我需要哪个字母?
发布于 2011-07-13 23:16:10
最好的来源是C#规范,特别是部分。
相关比特:
整型文字的类型按如下方式确定:
如果文本没有后缀,则它具有可表示其值的第一种类型:ulong.
ulong.
int、uint、long、uint。文本以u或u为后缀,具有可表示其值的第一种类型:long、UL、Ul、uL、uL、uL、uLul、lu、lu、lu或LU,其类型为ulong.如果未指定real_type_suffix,则实际文本的类型为double。否则,实际类型后缀将确定实际文本的类型,如下所示:
float。…double。…decimal。…这意味着该字母(或多个字母)被称为“后缀”。没有办法以这种方式表示short,所以您必须使用(short)0,或者只使用short x = 0;。
发布于 2011-07-13 23:09:59
它被称为后缀。
概览可在here中找到
发布于 2011-07-13 23:10:16
这
double d1 = 0d;是文字的示例,数字后面的字符是后缀。没有一个用于short的。您需要强制转换:
short s = (short)0;它们是在语言规范的2.4.4中定义的,特别是2.4.4.2将告诉你整数字面量,你会发现没有办法用字面量来表达short。此外,integer-type-suffixes还包括:
U u L l UL Ul uL ul LU Lu lU lu它们表示各种有符号/无符号的int/long类型。同样,无法使用文字来表示short。
https://stackoverflow.com/questions/6681112
复制相似问题