Provided by: manpages-ja-dev_0.5.0.0.20221215+dfsg-1_all bug

名前

       setlocale - 現在のスレッドのロケール (locale) を設定/取得する

書式

       #include <locale.h>

       locale_t uselocale(locale_t newloc);

   glibc 向けの機能検査マクロの要件 (feature_test_macros(7)  参照):

       uselocale():
           glibc 2.10 以降:
                  _XOPEN_SOURCE >= 700
           glibc 2.10 より前:
                  _GNU_SOURCE

説明

       uselocale()  関数は呼び出し元スレッドの現在のロケールを設定し、 そのスレッドの現在のロケー
       ルの直前の値を返す。 uselocale() の呼び出しが成功した後は、 ロケールに依存する関数のこのス
       レッドによる呼び出しは newloc で設定されたロケールで動作する。

       newloc 引数には以下の値のいずれかを指定できる。

       newlocale(3) か duplocale(3) の呼び出しで返されたハンドル
              呼び出し元スレッドの現在のロケールを指定したロケールに設定する。

       特別な値のロケールオブジェクトハンドル LC_GLOBAL_LOCALE
              呼び出し元スレッドの現在のロケールを  setlocale(3) で決定されるグローバルロケールに
              設定する。

       (locale_t) 0
              呼び出し元スレッドの現在のロケールは変更されないままである  (関数呼び出しの結果とし
              て現在のロケールが返される)。

返り値

       On  success,  uselocale()   returns the locale handle that was set by the previous call to
       uselocale()  in this thread, or LC_GLOBAL_LOCALE if there was no such previous  call.   On
       error, it returns (locale_t) 0, and sets errno to indicate the cause of the error.

エラー

       EINVAL newloc が有効なロケールオブジェクトを参照していない。

バージョン

       uselocale() 関数は GNU C ライブラリのバージョン 2.3 で初めて登場した。

準拠

       POSIX.1-2008.

注意

       setlocale(3) と異なり、 uselocale() では特定のロケールカテゴリーだけを指定して置き換えるこ
       とはできない。    いくつかのカテゴリーだけで現在のロケールとは異なるカテゴリーを利用するに
       は、  duplocale(3) と newlocale(3) を呼び出して、 現在のロケールと等価なロケールオブジェク
       トを取得し、 そのオブジェクトの所望のカテゴリーを変更する必要がある。

       newlocale(3) と duplocale(3) を参照。

関連項目

       locale(1), duplocale(3), freelocale(3), newlocale(3), setlocale(3), locale(5), locale(7)

この文書について

       この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの
       説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。