Операционная система ЗОСРВ «Нейтрино» > Руководство разработчика > Программные интерфейсы общего назначения > Прикладные библиотеки и технологии > Библиотека эмуляции терминала > API терминала > term_wchar_to_encoding()



term_wchar_to_encoding()

Перевод символа из Юникода в кодировку терминала

Прототип:

#include <sys/terminal.h>
int term_wchar_to_encoding(terminal_t *term, uint16_t source, char *destination, size_t maxdst, size_t *dstmade);

Аргументы:

term
Указатель на объект терминала, в соответствии с настройками которого будет выполнен перевод.
source
Символ Юникода, который требуется перевести в кодировку.
destination
Адрес буфера, в который будет записан результат перевода. В случае использования UTF-8 один символ может быть представлен несколькими байтами.
maxdst
Размер буфера, доступный для записи.
dstmade
Количество байт, записанных в буфер после перевода.

Библиотека:

terminal

Описание:

Данная функция согласно установленной в терминале таблице кодировки переводит переданный символ Юникода в кодировку, установленную в терминале. Если в терминале не установлена таблица кодировки, функция производит перевод в UTF-8.

Возвращаемое значение:

0
Перевод произведён успешно.
-1
В буфере не хватило места для результата перевода.


Note: Если в таблице кодировки не нашлось соответствующего символа, результатом перевода страновится '?', и функция возвращает 0. -1 возвращается только в случае, когда в буфере было недостаточно места для записи полного результата.

Классификация:

ЗОСРВ «Нейтрино»

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Да

Тематические ссылки:

term_encoding_to_wchar(), term_set_charset(), term_charset_load()




Предыдущий раздел: Terminal API