C# 语言规范--2.4.4.2 整数(转)

整数用于编写类型 intuintlongulong 的值。整数具有两种可能的形式:十进制和十六进制。

integer-literal:(整数:)
decimal-integer-literal(十进制整数)
hexadecimal-integer-literal(十六进制整数)
decimal-integer-literal:(十进制整数:)
decimal-digits integer-type-suffixopt(十进制数字 整数类型后缀可选)
decimal-digits:(十进制数字:)
decimal-digit(十进制数字)
decimal-digits decimal-digit(十进制数字 十进制数字)
decimal-digit: one of(十进制数字:下列之一)
0 1 2 3 4 5 6 7 8 9
integer-type-suffix: one of(整数类型后缀:下列之一)
U u L l UL Ul uL ul LU Lu lU lu
hexadecimal-integer-literal:(十六进制整数:)
0x hex-digits integer-type-suffixopt(0x 十六进制数字 整型后缀可选)
0X hex-digits integer-type-suffixopt(0X 十六进制数字 整型后缀可选)
hex-digits:(十六进制数字:)
hex-digit(十六进制数字)
hex-digits hex-digit(十六进制数字 十六进制数字)
hex-digit: one of(十六进制数字:下列之一)
0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f

一个整数的类型按下面这样确定:

  • 如果该整数没带后缀,则它属于以下所列的类型中第一个能够表示其值的那个类型:intuintlongulong
  • 如果该整数带有后缀 Uu,则它属于以下所列的类型中第一个能够表示其值的那个类型:uintulong
  • 如果该整数带有后缀 Ll,则它属于以下所列的类型中第一个能够表示其值的那个类型:longulong
  • 如果该整数带有后缀 ULUluLulLULulUlu,则它属于 ulong 类型。

如果整数表示的值超出了 ulong 类型的范围,则将发生编译时错误。

作为书写的风格(样式),建议在书写类型 long 的文本时使用“L”而不是“l”,因为字母“l”容易与数字“1”混淆。

为允许尽可能小的 intlong 值写为十进制整数,有下面两个规则:

  • 当具有值 2147483648 (231) 且没有“整型后缀”的一个十进制整数作为标记紧接在一元负运算符标记(第 7.6.2 节)后出现时,结果为具有值 −2147483648 (−231) 的 int 类型常数。在所有其他情况下,这样的十进制整数属于 uint 类型。
  • 当具有值 9223372036854775808 (263) 的一个十进制整数(没带整型后缀,或带有整型后缀 Ll)作为一个标记紧跟在一个一元负运算符标记(第 7.6.2 节)后出现时,结果是具有值 −9223372036854775808 (−263) 的 long 类型的常数。在所有其他情况下,这样的十进制整数属于 ulong 类型。
[@more@]C# 语言规范--2.4.4.2 整数

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8781179/viewspace-924528/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8781179/viewspace-924528/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值