[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
Форматирование сообщения - Примеры
Следующая страница приводит примеры форматирования сообщения. В первом
примере, сообщение будет выводиться на stderr как:
$ print
UX:print: ERROR: argument missing
TO FIX: Supply file name as second argument UX:print:002
Текст второго примера создается с использованием строковых функций.
Второе сообщение будет печататься на stderr как:
$ sorter junk
UX:sorter: WARNING: Cannot access the file:
junk
TO FIX: Make sure file names are valid.
Последний пример выдает сообщения об ошибках в соответствии с локалью.
Сначала устанавливается категория LC_MESSAGES в соответствии с
переменными среды LC_MESSAGES или LANG. Затем fmtmsg(3C) использует
gettxt(3C) для выдачи сообщений, зависящих от локали.
ФОРМАТИРОВАНИЕ СООБЩЕНИЯ - ПРИМЕРЫ
#include <fmtmsg.h>
fmtmsg(MM_SOFT|MM_APPL|MM_PRINT, "UX:print",
MM_ERROR, "argument missing",
"Supply file name as second argument",
"UX:print:002");
strcpy(buf, "Cannot access the file:\n\t");
strcat(buf, argv[1]);
fmtmsg(MM_SOFT|MM_PRINT|MM_UTIL, "UX:sorter",
MM_WARNING, buf,
"Make sure file names are valid.",
MM_NULLTAG);
setlocale(LC_MESSAGES, "");
fmtmsg(MM_SOFT|MM_APPL|MM_PRINT, "UX:request",
MM_WARNING, gettxt("UX:3", "no input"),
gettxt("UX:4", "enter input within 5 seconds"),
"UX:request:134");