3

我正在使用 Stylecop 提出一些自定义规则,并且正在尝试确定我是否有双精度或浮点数。

我能够浏览该语句并获得一个 CSTokenType。CSTokenType 是数字,可以作为字符串读取。但由于它只是一个数字,我无法真正知道它是 int、float、long、double 还是其他类型。

关于如何检查原始类型是什么的任何想法?

4

1 回答 1

2

编辑

要确定数字文字是双精度数还是浮点数,您必须检查是否以及如果是,CsToken.Text 中存在哪个后缀(当 CsTokenType == CsTokenType.Number 时)。

一些例子:

  • 15 是一个整数
  • 0.15 是双倍
  • 0.15d 是双倍
  • 0.15f 是一个浮点数
  • 0.15m 是小数

来源: http: //msdn.microsoft.com/en-us/library/aa691085 (v=VS.71).aspx和http://msdn.microsoft.com/en-us/library/aa664674(v=VS .71).aspx

于 2010-03-25T17:25:22.977 回答