catgets(3) メッセージカタログからメッセージを取り出す

書式

#include <nl_types.h>
char *catgets(nl_catd catalog, int set_number, int message_number,
const char *message);

説明

catgets() は catalog で指定されたメッセージカタログから、 セット set_number のメッセージ message_number を読み取る。 catalog は、 catopen(3) の呼び出しによって得られたカタログ ディスクリプタを指定する。 4番目の引数 message は、指定のメッセージカタログが現在利用できない 場合に catgets() が返すデフォルトのメッセージを指す。 メッセージテキストは内部のバッファ領域に格納されており、 保存や変更を行う場合にはアプリケーション側でコピーする必要がある。 返される文字列は常にヌルバイト ('\0') で終端される。

返り値

成功した場合、 catgets() は内部のバッファ領域へのポインタを返す。 ここにはヌル文字で終端されたメッセージ文字列が格納されている。 失敗した場合は message を返す。

準拠

POSIX.1-2001.

注意

これらの関数は libc.so.4.4.4c 以降でしか使えない。 Jan 1987 X/Open Portability Guide では、エラーの時に 返される値により微妙な指定をしている。 catalog で指定されたメッセージカタログが利用できない場合は message を返し、一方メッセージカタログはあるが指定したメッセージがない場合は 空の文字列が返される。 SUSv2 ではこの二種類のエラーリターンは廃止され、 常に message を返すことにしたようである。

この文書について

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