Stdio
ライブラリにfprintf
の機能があります。UEFIのfprintfの使い方
しかし、どのように使用するのですか?
最初の引数はFILE
タイプです。
しかし、私はから得たEFI_FILE_PROTOCOL* File
を持っています。 FILE
タイプへのマップ方法は?
Stdio
ライブラリにfprintf
の機能があります。UEFIのfprintfの使い方
しかし、どのように使用するのですか?
最初の引数はFILE
タイプです。
しかし、私はから得たEFI_FILE_PROTOCOL* File
を持っています。 FILE
タイプへのマップ方法は?
ホストされている環境とフリースタンディング環境があります。
C標準から:
実装を準拠した2つの形式は、ホストされ、自立しています。適合したホストされた実装は、厳密に適合するプログラムを受け入れなければならない。適合自立実装は、
<stdint.h>
ライブラリ節(節7)で指定された機能の使用は、標準ヘッダ<float.h>
、<iso646.h>
、<limits.h>
、<stdalign.h>
、<stdarg.h>
、<stdbool.h>
、<stddef.h>
の内容に限定される任意の厳密な適合プログラムを受け入れなければなりません、および<stdnoreturn.h>
。準拠している実装は、厳密に適合するプログラムの動作を変更しない限り、拡張機能(追加のライブラリ関数を含む)を持つことができます。
だから、(あなたが記述しているUEFI環境など)自立した環境で、Cの標準は、宣言/定義するfprintf()
機能を必要としないとのいずれかに定義されるようにFILE
タイプを必要としません。したがって、あなた自身でそれらをコーディングする必要があります。
できません。そのようなことはない。 UEFIのために移植されたstdlibを使用しなければなりません。これはUEFI SHELLプロトコルを使ってすべての魔法を実行します。それでは、CやstdlibをWindowsやLinuxとまったく同じように使うことができます。 – Alex