Функция mbtowc

Прототип функции mbtowc:

int mbtowc( wchar_t * ptrwc, const char * ptrmb, size_t max );

Заголовочный файл

Название Язык
stdlib.h С
cstdlib С++

Описание

Преобразование много-байтовых символов в широкие символы. wchar_t — эквивалент много-байтовых символов, на которые указывает указатель ptrmb. много-байтовые символы преобразуются в wchar_t и сохраняются в области памяти, на которую указывает ptrwc. В конце, функция mbtowc возвращает длину в байтах строки с много-байтовыми символами, на которую указывает указатель ptrmb.
mbtowc имеет свои собственные внутренние состояния, которые изменяются по мере необходимости при вызове этой функции.

Параметры:

  • ptrwc
    Указатель на объект типа wchar_t. Этот аргумент может быть нулевым указателем, в этом случае функция не охраняет много-байтовые символы в строке типа wchar_t, но все равно, возвращает длину строки с много-байтовыми символами в байтах.
  • ptrmb
    Указатель на первый байт строки с много-байтовыми символами. Этот аргумент может быть нулевым указателем, в этом случае функция сбрасывает внутреннее состояние перехода к начальному значению и возвращает возвращает ненулевое значение, если кодировка многобайтовых символов является платформо-зависимой, и — ноль, в других случаях.
  • max
    Максимальное количество байтов отводимое под один символ. Это значение не должно превышать значение макроса MB_CUR_MAX, в любом случае.

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

Если передаваемый аргумент через указатель ptrmb и не является нулевым указателем, функция wctomb возвращает размер много-байтового символа в байтах, на которую указывает указатель pmb, причём pmb должен указывать на реальный много-байтовый символ и не должен указывать на пустой символ завершения строки. Если много-байтовый символ — символа конца строки, функция возвращает нуль, а в случае, если символ не является много-байтовым символом, возвращается значение -1.
Если передаваемый аргумент через указатель ptrmb является нулевым указателем, то функция возвращает ненулевое значение, если кодировка много-байтовых символов является платформо-зависимой, и — ноль, в других случаях.

Автор: admin
Дата: 04.09.2012
Поделиться:

Оставить комментарий

Вы должны войти, чтобы оставить комментарий.