Embedded VAR(unsignedlong,TYPEDEF)这个语法对您意味着什么?OSEK/VDX

Embedded VAR(unsignedlong,TYPEDEF)这个语法对您意味着什么?OSEK/VDX,embedded,Embedded,我正在开发OSEK。我在事件api配置文件中找到了 typedef变量(无符号长-长,typedef)EventMaskType//[OSEK_OS_13.5.1] 这对你意味着什么?你知道这是什么吗 在我看来,当我在OSEK中工作时,它是在其他文件的某个地方定义的 我只想知道正在使用的语法。它是如何解决的 p、 学生:任何你知道或提示的问题,请回答。使用C预处理器宏可以完全混淆语法。编译器看到的是预处理后的代码,因此也是宏扩展后的代码。因此答案完全取决于宏VAR()扩展到什么。您是否搜索了VA

我正在开发OSEK。我在事件api配置文件中找到了

typedef变量(无符号长-长,typedef)EventMaskType//[OSEK_OS_13.5.1]

这对你意味着什么?你知道这是什么吗

在我看来,当我在OSEK中工作时,它是在其他文件的某个地方定义的

我只想知道正在使用的语法。它是如何解决的


p、 学生:任何你知道或提示的问题,请回答。

使用C预处理器宏可以完全混淆语法。编译器看到的是预处理后的代码,因此也是宏扩展后的代码。因此答案完全取决于宏
VAR()
扩展到什么。

您是否搜索了
VAR
宏?我想在本例中它将被扩展为
typedef unsigned long-EventMask@jeb,我在头文件中搜索了它。但令人惊讶的是,我在400+的.h和.c文件中发现了大约1800个匹配项。因此,我决定在这里询问,以了解发生了什么。@user263210:您只需要担心头文件(以及定义API的头文件),最终只需要一个“
”定义VAR(
”(尽管可能需要一个正则表达式来解释变量空白)。或者,任何像样的IDE都允许您右键单击符号并选择“转到定义…”或类似。在SO上发布问题不能代替学习如何导航代码。@user263210您应该能够告诉编译器输出预处理器阶段。然后您可以看到宏是如何运行的replaced@Clifford,我在记事本中编写,然后通过DOS提示符编译和构建。有一个批处理文件,我将运行该文件用包含的几个文件构建我的代码。我正在使用RTOS。如果有IDE,那么就容易多了。无论如何,感谢您的提示,我在compiler.h中找到了该文件,并将其定义为:#define VAR(type,memclass)memclass类型这只是用类型和传递给它的memclass替换。我知道它,但在这么多文件中找到它是一个问题,现在已经解决了。