USELOCALE

Section: Linux Programmer's Manual (3)
Updated: 2020-06-09
Index JM Home Page roff page
 

名前

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/ に書かれている。


 

Index

名前
書式
説明
返り値
エラー
バージョン
準拠
注意
関連項目
この文書について

This document was created by man2html, using the manual pages.
Time: 03:33:35 GMT, December 05, 2022