std::cout << getStrLen(test); // 6
std::cout << strlen(test); // стандартная фенкция: 11
Кусок из моей лабы по C++. Может кому-то пригодится
#include <iostream>
#include <locale>
#include <cstring>
using namespace std;
int getStrLen(char *arr) {
mbstate_t state = mbstate_t();//locale state
const char* ptr = arr;
const char* end = ptr + strlen(ptr);
int len, size = 0;
wchar_t wc;
while((len = mbrtowc(&wc, ptr, end-ptr, &state)) > 0) ptr += len, size++;
return size;
}