【发布时间】:2016-12-30 00:56:13
【问题描述】:
我正在学习 UEFI 编程,我注意到许多 EFI 头文件显示了我无法理解的语法块:
typedef
EFI_STATUS
(EFIAPI *EFI_TEXT_STRING) (
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
IN CHAR16 *String
);
- 您能否解释一下在这种情况下
typedef的论点是什么? - 为什么那些
IN是合法的语法?它是编译器特有的功能吗?
【问题讨论】:
-
以后请每个问题只问一个问题。
-
您可以先浏览一下宏,看看它们是如何有效使用的。这将帮助您更快地理解这一点。
-
IN很可能是宏,很可能扩展为const -
@LPs 是的,我做到了,我终于找到了定义 IN、OUT 和 OPTIONAL 的预处理器指令(它们恰好在 efidef.h 中)。
标签: c gcc syntax uefi compiler-specific