std::char_traits<CharT>::length

来自cppreference.com
< cpp‎ | string‎ | char traits
static std::size_t length( const char_type* s );
(C++17 前)
static constexpr std::size_t length( const char_type* s );
(C++17 起)

返回 s 所指的字符序列长度,即空终止字符( CharT() )的位置。

参数

s - 指向要返回长度的字符序列的指针

返回值

s 所指向字符序列的长度。

异常

不抛出。

复杂度

线性。

示例

#include <iostream>
 
void print(const char* str)
{
  std::cout << "string '" << str << "' ";
  std::cout << "length = " << std::char_traits<char>::length(str) << '\n';
}
 
int main()
{
  print("foo");
 
  std::string s("booo");
  print(s.c_str());
}

输出:

string 'foo' length = 3
string 'booo' length = 4