В чем разница между mblen и strlen?
Используется ли сегодня многобайтовая кодировка символов в Windows, Linux или Mac OS?Является ли многобайтовая кодировка символов такой же, как кодировка символов фиксированной ширины в Windows?
strlen принимает длину const char * и предполагает, что один char занимает один байт, поэтому он считает символы до тех пор, пока не встретится нулевой терминатор ('\ 0'), тогда как mblen принимает указатель также типа const char *, но он указывает на первый байт многобайтового символа .
strlen
const char *
char
mblen
Для получения дополнительной информации о многобайевых символах посмотрите этот вопрос.