0

我正在学习 UEFI 编程,我注意到许多 EFI 头文件都显示了我无法理解的语法块:

typedef
EFI_STATUS
(EFIAPI *EFI_TEXT_STRING) (
    IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This,
    IN CHAR16 *String
);
  • 您能否解释一下typedef在这种情况下的论点是什么?
  • 为什么那些IN是合法的语法?它是编译器特定的功能吗?
4

1 回答 1

1

它是函数指针的简单类型定义。EFI_TEXT_STRING 类型是一个指向函数的指针,该函数将指向 EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL 的指针作为其第一个参数,并将指向 CHAR16 的指针作为其第二个参数。该函数返回类型 EFI_STATUS。

于 2016-08-23T20:09:15.677 回答