duplocale サブルーチン

目的

ロケール・オブジェクトを複写します。

ライブラリー

標準 C ライブラリー (libc.a)

構文

#include <locale.h>
locale_t duplocale(locobj);
locale_t locobj;

説明

duplocale サブルーチンは、 locobj 引数によって参照されるロケール・オブジェクトの重複コピーを作成します。

locobj 引数の値が LC_GLOBAL_LOCALE の場合、 duplocale サブルーチンは、 setlocale サブルーチンによって決定されるグローバル・ロケールのコピーを含む新規ロケール・オブジェクトを作成します。

locobj 引数がロケール・オブジェクトの有効なハンドルでない場合、 duplocale サブルーチンの動作は未定義です。

戻り値

正常に実行された場合、 duplocale サブルーチンは新しいロケール・オブジェクトのハンドルを戻します。 それ以外の場合、 duplocale サブルーチンは (locale_t) 0 を戻し、 errno グローバル変数を設定してエラーを示します。

エラー・コード

以下に該当する場合、 duplocale サブルーチンは失敗します。

項目 説明
ENOMEM

ロケール・オブジェクトの作成またはロケール・データのロードに使用できるメモリーが不足しています。

以下に該当する場合、 duplocale サブルーチンは失敗する可能性があります。

項目 説明
EINVAL locobj 引数は、ロケール・オブジェクトのハンドルではありません。