ITPub博客

首页 > 应用开发 > IT综合 > C# 语言规范--2.4.4.2 整数(转)

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

原创 IT综合 作者:BugRobber 时间:2007-07-06 15:15:43 0 删除 编辑

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

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

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

  • 如果该整数没带后缀,则它属于以下所列的类型中第一个能够表示其值的那个类型:int、uint、long、ulong。
  • 如果该整数带有后缀 U 或 u,则它属于以下所列的类型中第一个能够表示其值的那个类型:uint、ulong。
  • 如果该整数带有后缀 L 或 l,则它属于以下所列的类型中第一个能够表示其值的那个类型:long、ulong。
  • 如果该整数带有后缀 UL、Ul、uL、ul、LU、Lu、lU 或 lu,则它属于 ulong 类型。

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

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

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

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

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

请登录后发表评论 登录
全部评论
  • 博文量
    372
  • 访问量
    200904