mblen()

Высчитать количество байт в строке из многобайтовых символов

Прототип:

#include <stdlib.h>
int mblen( const char *s,
size_t n );

Аргументы:

s
NULL, or a pointer to a multibyte character.
n
The maximum number of bytes that you want to count.

Библиотека:

libc

Описание:

The mblen() function counts the number of bytes in the multibyte character pointed to by s, to a maximum of n bytes.

The mbrlen() function is a restartable version of mblen().

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

Примеры:

#include <stdio.h>
#include <stdlib.h>
int main( void )
{
int len;
char *mbs = "string";
printf( "Character encodings do " );
if ( !mblen( NULL, 0 ) )
{
printf( "not " );
}
printf( "have state-dependent \nencoding.\n" );
len = mblen( "string", 6 );
if ( len != -1 )
{
mbs[len] = '\0';
printf( "Multibyte char '%s'(%d)\n", mbs, len );
}
return (EXIT_SUCCESS);
}

Код генерирует следующий вывод:

$ ./a.out Character encodings do not have state-dependent encoding. Multibyte char 's'(1)

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

ANSI, POSIX 1003.1

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

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

mbrlen(), mbrtowc(), mbsinit(), mbsrtowcs(), mbstowcs(), mbtowc()




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