是否有任何C++;关于数字文字后缀的样式指南? 在我读过的所有C++风格指南中,我从来没有见过任何关于数字字词后缀的信息(即 3.14f , 0L等)。p>

是否有任何C++;关于数字文字后缀的样式指南? 在我读过的所有C++风格指南中,我从来没有见过任何关于数字字词后缀的信息(即 3.14f , 0L等)。p>,c++,coding-style,literals,C++,Coding Style,Literals,问题 是否有任何风格指南谈论这些用法,或者有一个通用的惯例 在图形编程中,我偶尔会遇到f后缀。在编程领域的使用类型上有什么趋势吗 Web搜索“c++数字后缀”返回: 这些就是你要找的吗?我知道的唯一既定惯例(无论如何,有些既定)是始终使用L而不是L,以避免将其误认为1。除此之外,在你需要的时候使用你所需要的东西几乎是个问题 还注意到C++ 11允许用户定义的文字使用用户定义的后缀。 < P>没有我找到的一般样式指南。我使用大写字母,而且我对使用F表示浮点文字和L表示长双精度很挑剔。我还为整

问题

  • 是否有任何风格指南谈论这些用法,或者有一个通用的惯例

  • 在图形编程中,我偶尔会遇到
    f
    后缀。在编程领域的使用类型上有什么趋势吗

  • Web搜索“c++数字后缀”返回:


    这些就是你要找的吗?

    我知道的唯一既定惯例(无论如何,有些既定)是始终使用
    L
    而不是
    L
    ,以避免将其误认为
    1
    。除此之外,在你需要的时候使用你所需要的东西几乎是个问题


    还注意到C++ 11允许用户定义的文字使用用户定义的后缀。

    < P>没有我找到的一般样式指南。我使用大写字母,而且我对使用F表示浮点文字和L表示长双精度很挑剔。我还为整型文字使用了适当的后缀

    我想你知道这些后缀的意思:
    3.14F
    是一个
    float
    literal,12.345是一个双字面值,6.6666L是一个长双字面值

    对于整数:
    U
    unsigned
    L
    long
    LL
    long
    。在
    U
    L
    s之间的顺序并不重要,但我总是把
    UL
    放进去,因为我声明了这样的变量
    无符号长

    如果将一种类型的变量指定为另一种类型的文字,或为另一种类型的函数参数提供一种类型的数值文字,则必须进行转换。使用适当的后缀可以避免这种情况,并且与static_cast用于调用强制类型转换一样有用。一致使用数字文字后缀是一种很好的风格,可以避免数字意外

    人们对小写还是大写最好有不同的看法。选择一种适合你的风格,并保持一致。

    建议使用大写字母:

    DCL16-C。使用“L”,而不是“L”,表示长值 小写字母l(ell)很容易与数字1(1)混淆。当指示整型文字常量是长值时,这可能会特别令人困惑。这项建议类似于

    同样,当指示整型文字常量是长值时,应该使用大写LL而不是小写LL


    < C++ 03语言的MISRA C++ 2008在规则M2-13-3中(至少,如所引述的),

    应使用“U”后缀 适用于所有八进制或十六进制 无符号类型的整数文本

    链接文档还与JSF-AV2005和HIC++v4.0进行了比较,所有这四个标准都要求后缀为大写


    但是我找不到规则(但我手头没有抄写的MISRA C++),它指出在需要时,应该使用后缀。然而,IrrC有一个在MISRA C++(或者可能是我以前的公司编码准则…)< /P>我不太确定你的问题是什么。你是在问数字文字后缀的含义,还是在问人们是否已经就其使用建立了一些约定?@GregHewgill:我是在问人们是否已经就其使用建立了约定。你需要使用时就使用它们。您需要一个
    浮点值
    常量吗?使用
    f
    后缀。是否需要一个
    无符号
    常量?使用
    u
    常数。等等。我在寻找一个权威的来源,比如谷歌C++风格指南等等。你可以用谷歌搜索你想要的一切,但你找不到任何东西,因为这样的东西似乎不存在。@bobobobo我想是的。。。要么那样,要么那样。我倾向于使用大写字母,因为“l”看起来像“1”。使用后缀在C++11 auto中尤其重要。回答得好,我一直在寻找选择大写版本的理由。好吧,我已经使用小写版本很多年了,从来没有对此感到困惑,也没有听说有人对此感到困惑。。可能取决于使用的字体。。我反对使用小写字母的理由是:它不需要打字(按住shift键)。我知道阅读代码更重要,但如果在我(有限的)经验中,阅读代码似乎并不重要,那么这是一个有效的论点。我也是一个长期的RSI患者,所以像轮班这样的事情对我来说很重要。