Arl*_*ler 0 c# visual-studio-2010
我正在尝试将最大的int64值写入命令行.我尝试使用0x111111111111111116个,visual studio说这是int64.我原以为这将是int16.这里缺少什么?
0x是十六进制而不是二进制文字的前缀.这意味着您的号码的二进制表示是0001000100010001000100010001000100010001000100010001000100010001
遗憾的是,C#中没有二进制文字,因此您必须自己进行计算(0x7FFFFFFFFFFFFFFF)或使用Convert该类,例如:
short s = Convert.ToInt16("1111111111111111", 2); // "2" for binary
Run Code Online (Sandbox Code Playgroud)
为了获得最大的Int64编号,您不需要执行自己的任何计算,因为在此字段中已经可以使用它:
Int64.MaxValue
Run Code Online (Sandbox Code Playgroud)