C 为什么我们有“一个”呢;EventMaskType";最后一行两次?

C 为什么我们有“一个”呢;EventMaskType";最后一行两次?,c,operating-system,C,Operating System,我在OS源代码文件中发现了以下C代码。这三行在三个不同的源文件中。为什么在最后一行有两次“EventMaskType”?即使我从第三行中删除第一个出现的“EventMaskType”,它也会给我相同的输出 typedef unsigned long uint64_t; typedef uint64_t EventMaskType; #define EVENT_MASK_OsEvent1 EventMaskType((EventMaskType)1u<<1) type

我在OS源代码文件中发现了以下C代码。这三行在三个不同的源文件中。为什么在最后一行有两次“EventMaskType”?即使我从第三行中删除第一个出现的“EventMaskType”,它也会给我相同的输出

typedef unsigned long uint64_t;
typedef uint64_t        EventMaskType;
#define EVENT_MASK_OsEvent1  EventMaskType((EventMaskType)1u<<1)

typedef无符号长uint64\t;
typedef uint64_t EventMaskType;
#定义事件掩码OsEvent1事件掩码类型((EventMaskType)1u

……它不改变任何东西,因为它已经是那个类型。不应该在一个应用程序头中,而是编译器头。它是C标准类型,已经在代码> STNDRT.H./C>中定义。每个C编译器都需要提供它。它看起来不像C代码。如果是C++,请更改标签和文本。实际上它看起来像C++一样,看起来像C::-是的,它是从Stdit.h复制的。我想把所有相关的代码都放在这里。这是C代码。

typedef unsigned long uint64_t;
typedef uint64_t        EventMaskType;
#define EVENT_MASK_OsEvent1  EventMaskType((EventMaskType)1u<<1)
EventMaskType( /* ... */)