std::wcslen
Определено в заголовке <cwchar> | ||
|---|---|---|
std::size_t wcslen( const wchar_t* str ); |
Возвращает длину широкой строки, то есть количество неравных нулю широких символов, которые предшествуют завершающему нулевому широкому символу.
Поведение не определено, если в массиве широких символов, на который указывает str, нет нулевого символа.
Параметры
| str | - | указатель на завершаемую нулём широкую строку для проверки |
Возвращаемое значение
Длина завершаемой нулём широкой строки str.
Возможная реализация
std::size_t wcslen(const wchar_t* start)
{
// NB: start is not checked for nullptr!
const wchar_t* end = start;
while (*end != L'\0')
++end;
return end - start;
} |
Пример
#include <clocale>
#include <cwchar>
#include <iostream>
int main()
{
const wchar_t* str = L"爆ぜろリアル!弾けろシナプス!パニッシュメントディス、ワールド!";
std::setlocale(LC_ALL, "en_US.utf8");
std::wcout.imbue(std::locale("en_US.utf8"));
std::wcout << "The length of \"" << str << "\" is " << std::wcslen(str) << '\n';
}Вывод:
The length of "爆ぜろリアル!弾けろシナプス!パニッシュメントディス、ワールド!" is 32
См. также
| возвращает длину заданной строки (функция) |
|
| возвращает количество байтов в следующем многобайтовом символе (функция) |
|
C документация для wcslen |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/string/wide/wcslen