サイズ指定
ファイル形式仕様では、4 番目のオプションのフィールドは、変換の指定子の引数の長さの修飾子です。type 分野h、l、w、I、I32、I64と llへの省略可能な size のフィールドのプレフィックス—引数の長さまたは short 対応のサイズ" 32 "を指定してください。または値を変更する変換の指定子が 64 ビット、バイト文字またはワイド文字依存。関数の printf と wprintf のファミリに type の文字とこれらの長さの修飾子のプレフィックスを次の表に示すように、引数の長さの解釈を指定するために使用されます。
[!メモ]
I、I32と I64 の長さの修飾子のプレフィックスは Microsoft の拡張機能で、ANSI 互換性がありません。型 double のデータを使用して型 wchar_tのデータを使用し、l のプレフィックスを使用して型 char、w プレフィックスのデータと h プレフィックスは Microsoft の拡張機能です。hh、j、zと t の長さのプレフィックスはサポートされていません。
printf 関数と wprintf のファイル形式型指定子のプレフィックスのサイズを変更します。
指定する型 |
プリフィックス |
型指定子 |
---|---|---|
long int |
l (L 小文字) |
d、i、o、x、または X |
long unsigned int |
l |
o、u、x、または X |
long long |
ll |
d、i、o、x、または X |
short int |
h |
d、i、o、x、または X |
short unsigned int |
h |
o、u、x、または X |
__int32 |
I32 |
d、i、o、x、または X |
unsigned __int32 |
I32 |
o、u、x、または X |
__int64 |
I64 |
d、i、o、x、または X |
unsigned __int64 |
I64 |
o、u、x、または X |
ptrdiff_t (つまり、32 ビット プラットフォームの __int32、64 ビット プラットフォームの __int64) |
I |
d、i、o、x、または X |
size_t (つまり、32 ビット プラットフォームの unsigned __int32、64 ビット プラットフォームの unsigned __int64) |
I |
o、u、x、または X |
long doubleVisual C++で、long double が別々の型ですが、doubleと同じ内部表現があります)。 |
l または L |
a、A、e、E、f、g、または G |
printf と wprintf 関数のバイト文字。(hc または hC の型指定子が printf 関数の c と wprintf 関数の C と同じ意味です)。 |
h |
c または C |
printf と wprintf 関数のワイド文字。(lc、lC、wc または wC の型指定子が printf 関数の C と wprintf 関数の c と同じ意味です)。 |
l または w |
c または C |
printf と wprintf 関数のバイト文字列。(hs または hS の型指定子が printf 関数の s と wprintf 関数の S と同じ意味です)。 |
h |
s、S、または Z |
printf と wprintf 関数の文字列。(ls、lS、ws または wS の型指定子が printf 関数の S と wprintf 関数の s と同じ意味です)。 |
l または w |
s、S、または Z |