次の方法で共有


StrFormatByteSizeA 関数 (shlwapi.h)

サイズに応じて、数値をバイト、キロバイト、メガバイト、またはギガバイト単位でサイズ値として表される数値を表す文字列に変換します。 1 つのパラメーター型 StrFormatByteSizeW とは異なります。

構文

PSTR StrFormatByteSizeA(
        DWORD dw,
  [out] PSTR  pszBuf,
        UINT  cchBuf
);

パラメーター

dw

型: DWORD

変換する数値。

[out] pszBuf

種類: PSTR

変換された文字列を受け取るバッファーへのポインター。

cchBuf

型: UINT

pszBuf指すバッファーのサイズ (文字単位)。

戻り値

種類: PSTR

変換された文字列へのポインターを返すか、変換が失敗した場合は NULL を します。

備考

この関数の最初のパラメーターは、ANSI バージョンと Unicode バージョンで異なる型を持っています。 数値が DWORDの場合は、両方のケースでテキスト マクロ StrFormatByteSize を使用できます。 コンパイラは、Unicode ケースの LONGLONG に数値をキャストします。 数値が LONGLONGの場合は、StrFormatByteSizeW 明示的に使用する必要があります。

Windows 10 では、サイズは Base 2 ではなく Base 10 で報告されます。 たとえば、1 KB は 1024 ではなく 1000 バイトです。

次の表は、この関数が数値をテキスト文字列に変換する方法を示しています。

数値 テキスト文字列
532 532 バイト
1340 1.30 KB
23506 22.9 KB
2400016 2.28 MB
2400000000 2.23 GB
 

手記

shlwapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして StrFormatByteSize を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー shlwapi.h
ライブラリ Shlwapi.lib
DLL Shlwapi.dll (バージョン 4.71 以降)

関連項目

StrFormatByteSize64

StrFormatByteSizeEx の

StrFormatByteSizeW