Scroll to navigation

CATGETS(3) Library Functions Manual CATGETS(3)

ИМЯ

catgets - получает сообщение из каталога сообщений

LIBRARY

Standard C library (libc, -lc)

СИНТАКСИС

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

ОПИСАНИЕ

Функция catgets() читает сообщение номер message_number в наборе номеров set_number, из каталога сообщений, обозначенного как catalog, где catalog — это дескриптор каталога, полученный ранее вызовом функции catopen(3). Четвертый аргумент, message, является указателем на строку с сообщением по умолчанию, которую вернёт catgets() в случае, если указанный каталог сообщений недоступен. Текст сообщений хранится во внутреннем буфере и должен быть скопирован приложением, если оно должно быть изменено или сохранено. Возвращаемая строка всегда заканчивается байтом null ('\0').

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении catgets() возвращает указатель на внутренний буфер, содержащий заканчивающуюся null строку с сообщением. Если сообщение не найдено, то catgets() возвращает значение message.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
catgets() Безвредность в нитях MT-Safe

СТАНДАРТЫ

POSIX.1-2001, POSIX.1-2008.

ЗАМЕЧАНИЯ

Функция catgets() доступна только в libc.so.4.4.4c и более поздних версиях. В январе 1987 года в X/Open Portability Guide определены более точные сообщения об ошибках: message возвращается, если каталог catalog недоступен; если возвращена пустая строка, то каталог доступен, но не содержит данных о сообщении. Эти две возможные ситуации, похоже, не учтены в XSUSv2, и в случае ошибки всегда возвращается message.

СМ. ТАКЖЕ

catopen(3), setlocale(3)

ПЕРЕВОД

Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Katrin Kutepova <blackkatelv@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.

15 декабря 2022 г. Linux man-pages 6.02