代码之家  ›  专栏  ›  技术社区  ›  Joh

在C语言中,变量名中的双下划线是什么意思[[副本]

  •  7
  • Joh  · 技术社区  · 16 年前

    可能重复:
    Why do people use __(double underscore) so much in C++

    有些数据结构和函数以双下划线开头,如:

    __u32  len
    

    3 回复  |  直到 9 年前
        1
  •  16
  •   Ben Voigt    16 年前

    这意味着它是一个系统保留名称。C标准规定,所有以两个下划线或下划线和大写字母开头的名称都保留给系统或编译器使用,不应在应用程序代码中定义。

        2
  •  3
  •   R.. GitHub STOP HELPING ICE    13 年前

    其他答案是正确的,它是为实现保留的。当然,在这里,Linux应该走出20世纪,使用 类型 uint32_t __u32 , u_int32_t ,…)困扰着传统的Unices。。

        3
  •  1
  •   Michael F    16 年前

    这是一种类型,在 here (其他地方也很少)。

    按照惯例,通常在类型、变量或函数名前加上双下划线,表示一个始终保留的名称,如当前标准(C99)第7.1.3节所定义。