【问题标题】:What is the 'd' in the literal 12d called?文字 12d 中的“d”是什么?
【发布时间】:2010-06-02 15:17:02
【问题描述】:

我觉得我应该知道这个问题的答案,但我不知道。

数字文字上的类型字符叫什么?

double myDouble = 12d;
float myFloat = 10f;

我今天想找到它们的完整列表,但想不出要让 Google 搜索什么。

编辑

如果有人感兴趣,找到一个不错的列表

http://www.undermyhat.org/blog/2009/08/secrets-and-lies-of-type-suffixes-in-c-and-vb-net/

【问题讨论】:

  • 因为几乎同时有 3 个答案,所以都略有不同,我想它的定义可能不是很好:)
  • 请注意,使用小写的 el 作为类型后缀是一个非常糟糕的主意。假设你有 M(int) 和 M(long)。 M(5432l) 调用哪一个? M(54321) 呼叫哪一个? :-)

标签: c# terminology numbers literals


【解决方案1】:

称为数据类型后缀。

【讨论】:

    【解决方案2】:

    我不知道是否有官方术语,但 C# 语言规范通常将它们称为类型后缀。

    【讨论】:

    • 找到了我正在寻找的'c# type-suffix'。感谢所有回复的人。
    • C# 规范引用它们的事实难道不是这样的使它成为官方术语吗?
    • @Joren 基本上是的。我所说的那句话的意思是,我知道没有一行明确指出“这些被称为类型后缀”。只是语法中常用的后缀
    【解决方案3】:

    数字文字后缀

    列表:

    • uint: u
    • long: l
    • ulong: ul
    • float: f
    • decimal: m

    【讨论】:

      【解决方案4】:

      C# 3.0 规范 (MSWord file) 将它们称为type-suffix,分为两类:integer-type-suffixreal-type-suffix

      integer-type-suffixes 包括:
      U u - 无符号整数
      L l - 长
      UL Ul uL ul LU Lu lU lu - unsigned long

      real-type-suffixes 包括:
      F f - 浮动
      D d - 双
      M m - 十进制

      【讨论】:

        猜你喜欢
        • 2012-02-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-16
        • 2011-01-24
        • 1970-01-01
        相关资源
        最近更新 更多