2016-08-23 12 views
-1

私はUEFIプログラミングを学んでいると私は、EFIのヘッダファイルの多くは、私が理解することはできません。この構文を使用してチャンクを示していることに気づく:あなたはその引数が何であるかを説明してもらえこのCの定義をefilib.hから説明できますか?

typedef 
EFI_STATUS 
(EFIAPI *EFI_TEXT_STRING) (
    IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *This, 
    IN CHAR16 *String 
); 
  • typedefこの場合?
  • どうしてこれらのINは法的な構文ですか?コンパイラ特有の機能ですか?
+0

[Cでの関数ポインタのtypedefの理解](http://stackoverflow.com/questions/1591361/understanding-typedefs-for-function-pointers-in-c) – Drop

+1

質問ごとに1つの質問のみを入力してください将来は。 – Drop

+0

最初にマクロを調べ、そのマクロがどのように効果的に使用されているかを確認できます。これはあなたがこれを少し早く理解するのに役立ちます。 – Sridhar

答えて

1

これは、関数ポインタの単純なtypdefです。 EFI_TEXT_STRING型は、第1引数としてEFI_SIMPLE_TEXT_OUTPUT_PROTOCOLへのポインタをとり、第2引数としてCHAR16へのポインタをとる関数へのポインタです。この関数はEFI_STATUS型を返します。

関連する問題