_ltoa_s、_ltow_s
文字列に長整数を変換します。 これらの関数は、「CRT のセキュリティ機能」に説明されているように、_ltoa、_ltow のセキュリティが強化されたバージョンです。
errno_t _ltoa_s(
long value,
char *str,
size_t sizeOfstr,
int radix
);
errno_t _ltow_s(
long value,
wchar_t *str,
size_t sizeOfstr,
int radix
);
template <size_t size>
errno_t _ltoa_s(
long value,
char (&str)[size],
int radix
); // C++ only
template <size_t size>
errno_t _ltow_s(
long value,
wchar_t (&str)[size],
int radix
); // C++ only
パラメーター
value
変換される数値。str
結果文字列のバッファー。sizeOfstr
_ltoa_s のバイトまたは _ltow_sの単語の str のサイズ。radix
value の基数。
戻り値
この関数が正常終了した場合は 0、失敗した場合はエラー コードを返します。
解説
_ltoa_s 関数は、value の数字を null で終わる文字列に変換し、その結果 (最大 33 バイト) を str に格納します。 radix 引数は、value の基数を 2 ~ 36 の範囲で指定します。 radix を 10 に設定し、value が負の場合、格納される文字列の最初の文字はプラス記号 (–) です。 _ltow_s は _ltoa_sのワイド文字バージョンであり、; _ltow_s の 2 番目の引数はワイド文字列です。
str が NULL ポインターである場合、または sizeOfstr がゼロ以下の場合、これらの関数は パラメーターの検証"に説明されているように、無効なパラメーター ハンドラーを呼び出します。 実行の継続が許可された場合、これらの関数は長整数の範囲の value または str が、これらの関数はを返し、ERANGEに errno を設定した場合は -1 を返し、EINVALに errno を設定します。
C++ では、これらの関数の使用はテンプレートのオーバーロードによって簡素化されます。オーバーロードでは、バッファー長を自動的に推論できる (サイズの引数を指定する必要がなくなる) だけでなく、古くてセキュリティが万全ではない関数を新しく安全な関数に自動的に置き換えることができます。 詳細については、「セキュリティ保護されたテンプレート オーバーロード」を参照してください。
汎用テキスト ルーチンのマップ
Tchar.h のルーチン |
_UNICODE および _MBCS が未定義の場合 |
_MBCS が定義されている場合 |
_UNICODE が定義されている場合 |
---|---|---|---|
_ltot_s |
_ltoa_s |
_ltoa_s |
_ltow_s |
必要条件
ルーチン |
必須ヘッダー |
---|---|
_ltoa_s |
<stdlib.h> |
_ltow_s |
<stdlib.h> |
互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。