CATOPEN
Section: Linux Programmer's Manual (3)
Updated: 2015-08-08
Index
JM Home Page
roff page
 
名前
catopen, catclose - メッセージカタログのオープン/クローズ
 
書式
#include <nl_types.h>
nl_catd catopen(const char *name, int flag);
int catclose(nl_catd catalog);
 
説明
関数 catopen()  はメッセージカタログをオープンし、カタログディスクリプターを返す。 このディスクリプターは catclose()
または execve(2)  が呼び出されるまで有効である。 カタログディスクリプターを実装するために ファイルディスクリプターを使用すると、
FD_CLOEXEC フラグが設定される。
引数 name はオープンするメッセージカタログの名前を指定する。 name が絶対パスで指定されている場合 (すなわち '/'
を含んでいる場合)、 name はメッセージカタログへのパス名である。 それ以外の場合、環境変数 NLSPATH が name
とともに使用され %N を置き換える (locale(7)  参照)。 プロセスが root 権限を持っているときに NLSPATH
が使われるかどうかは指定されていない。 NLSPATH 環境変数が存在しないか、 NLSPATH で指定されたパスの中の
どのパスにおいてもメッセージカタログをオープンできない場合、 実装で定義されているパスが使われる。 後者のデフォルトパスは、 flag 引数が
NL_CAT_LOCALE の場合には LC_MESSAGES のロケール設定に依存し、 flag 引数が 0 の場合には
LANG 環境変数に依存する。 ロケールの LC_MESSAGES を変更すると、
オープンされているカタログディスクリプターが無効になるかもしれない。
catopen()  の flag 引数は、使用される言語のソースを示すために使われる。 NL_CAT_LOCALE に設定されると、
LC_MESSAGES の現在のロケール設定が使われる。 それ以外の場合は LANG 環境変数が使われる。
関数 catclose()  は catalog で指定されたメッセージカタログをクローズする。 これは、以降の catalog
で指定されるメッセージカタログへの全ての参照を無効にする。
 
返り値
関数 catopen()  が成功すると、 nl_catd 型のメッセージカタログディスクリプターを返す。 失敗した場合は
(nl_catdv) -1 を返し、 errno を設定してエラーを示す。 ここで起こり得るエラーの値には、 open(2)
の呼び出しの際に起こり得る全てのエラーの値が含まれる。
関数 catclose()  は、成功した場合 0 を、失敗した場合 -1 を返す。
 
環境変数
- LC_MESSAGES
 - 
LC_MESSAGES ロケール設定のソースになることも可能なので、 flag が NL_CAT_LOCALE
に設定されている場合は、使用する言語を決定するのに使われる。
 - LANG
 - 
flag が 0 の場合、使用する言語を決定する。
 
 
属性
この節で使用されている用語の説明については、 attributes(7) を参照。
| インターフェース | 属性 | 値
  | 
| 
catopen()
 | Thread safety | MT-Safe env
  | 
| 
catclose()
 | Thread safety | MT-Safe
  | 
 
準拠
POSIX.1-2001, POSIX.1-2008.
 
注意
以上は POSIX.1 における説明である。 glibc では NL_CAT_LOCALE の値は 1 である。
デフォルトのパスは場合によって様々であるが、通常は /usr/share/locale 以下のファイルが調べられる。
 
関連項目
catgets(3), setlocale(3)
 
この文書について
この 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: 16:46:40 GMT, November 24, 2023