【发布时间】:2019-01-31 20:17:50
【问题描述】:
我在其他开发者的代码中看到过这个表达式,我无法理解它的含义,代码行是:
typedef struct _Space Space;
因此,对于语法,我认为_Space 是一种变量或类似的东西,但我不知道它是哪种变量(整数、字符串、布尔值等)。
有人知道吗?
【问题讨论】:
-
除此之外 - 根据 C 标准定义名称以下划线开头的结构在技术上是一种未定义的行为。我认为这种做法很常见,但看起来人们只是对结构的名称和它的 typedefed 别名感到不舒服,这实际上很好。与前导下划线不同。
-
@EugeneSh。这在 Windows SDK 结构定义中几乎无处不在
-
@GovindParmar 我会将 Windows API 视为保留这些标识符的“实现”。并且不要忘记 MS 不符合 C 标准...
标签: c variables struct typedef space