C# var默认为哪种int类型?
可能重复:C# var默认为哪种int类型?,c#,C#,可能重复: 在编程中使用var之后,我很好奇,当var用于int类型时,它的默认值是什么。例如,如果我使用 var foo=65535 类型是ushort还是仅仅int?谢谢。所有整数文本的类型都是int,因此您的变量将是int,除非您在末尾强制转换或添加显式类型限定符: var quick = 65535; // int var brown = (ushort)65535; // ushort var fox = 65535L; // long 实际上,您
在编程中使用
var
之后,我很好奇,当var用于int
类型时,它的默认值是什么。例如,如果我使用
var foo=65535
类型是
ushort
还是仅仅int
?谢谢。所有整数文本的类型都是int
,因此您的变量将是int
,除非您在末尾强制转换或添加显式类型限定符:
var quick = 65535; // int
var brown = (ushort)65535; // ushort
var fox = 65535L; // long
实际上,您要问的是在C#?中整数文本的类型是什么,答案可以在规范中找到: (4.0规范第2.4.4.2节) 整数文本的类型确定如下:
- 如果文本没有后缀,则它具有可以表示其值的第一种类型:int、uint、long和ulong
- 如果文字的后缀为U或U,则它具有可以表示其值的第一种类型:uint、ulong
- 如果文字的后缀为L或L,则它具有可以表示其值的第一种类型:long、ulong
- 如果文字后缀为UL、UL、UL、UL、LU、LU或LU,则为ulong类型
它可能是Int32,因为这是一种标准。你为什么不知道呢<代码>变量编号=65535;Console.Write(num.GetType().Name)谢谢。你的回答很有帮助。
未签名
在C#中不起作用。我想你是想用ushort
。谢谢。你的回答很有描述性,而且很有帮助。