wcstoul(), wcstoull()

Преобразовать строку широких символов в беззнаковое длинное целое число

Прототип:

#include <wchar.h>
long wcstoul( const wchar_t *ptr,
wchar_t **endptr,
int base );
long long wcstoull( const wchar_t *ptr,
char **endptr,
int base );

Аргументы:

ptr
Указатель на строку для преобразования.
endptr
Если этот параметр не равен NULL, функция сохраняет в по адресу из значения параматра первый нераспознанный символ, который встретился в строке.
base
Основание числа.

Библиотека:

libc

Описание:

Функции, которые преобразуют строку, состоящую из широких символов, в число:

Обе функции распознают строку, которая может содержать необязательный пробел, за которым следует последовательность цифр и букв. Преобразование прекращается при первом нераспознанном широком символе. Если endptr не NULL, указатель на нераспознанный символ сохраняется в объекте, на который указывает endptr.

Если base равен нулю, первые символы после знака (необязательного) определяют основание для преобразования. Если первый символ 0x или 0X, то цифры рассматриваются как шестнадцатеричные. Если первый символ равен 0, цифры рассматриваются как восьмеричные. Во всех остальных случаях используется десятичное основание числа. Если base не равен нулю, аргумент должен быть в диапазоне от 2 до 36. Буквы a-z и A-Z используются для представления значений от 10 до 35. Только те буквы, значение которых меньше base, разрешены. Если основание числа равно 16, символы 0x или 0X могут опционально предшествовать последовательности букв и цифр.

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

Преобразованное значение.

Если преобразованное значение вызывает переполнение, функция возвращает ULONG_MAX | ULONGLONG_MAX и устанавливает значение ERANGE переменной errno. Если основание за пределами диапазона, функция возвращает ноль, а переменной errno устанавливается значение EDOM.

Коды ошибок:

ERANGE
Значение непредставимо
EINVAL
Значение для base не поддерживается или преобразование не может быть выполнено.

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

ANSI, POSIX 1003.1

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

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

errno wcrtomb(), wcsrtombs(), wcstod(), wcstof(), wcstold(), wcstoimax(), wcstoumax(), wcstok(), wcstol(), wcstoll(), wcstombs(), wctob(), wctomb()




Предыдущий раздел: Описание API системной библиотеки