std::char_traits<char>::length, std::char_traits<wchar_t>::length, std::char_traits<char8_t>::length, std::char_traits<char16_t>::length, std::char_traits<char32_t>::length
static std::size_t length( const char_type* s ); | (constexpr начиная с C++17) |
Возвращает длину символьной последовательности, на которую указывает s, то есть позицию завершающего нулевого символа (char_type()).
Общие требования к типам символьных признаков для X::length см. в разделе CharTraits.
Параметры
| s | - | указатель на символьную последовательность, длину которой нужно вернуть |
Возвращаемое значение
Длина символьной последовательности, на которую указывает s.
Сложность
Линейная.
Пример
#include <iomanip>
#include <iostream>
#include <string>
void print(const char* str)
{
std::cout << std::quoted(str) << " has length = "
<< std::char_traits<char>::length(str) << '\n';
}
int main()
{
print("foo");
std::string s{"booo"};
print(s.c_str());
}
Вывод:
"foo" has length = 3 "booo" has length = 4
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/string/char_traits/length