公共静态成员函数
<string>

std::char_traits::length

static size_t length (const char_type* s);
获取空终止字符串的长度
返回以空字符结尾的字符序列s的长度。

所有字符特性类型实现的行为应是返回第一个字符的位置,当与member eq比较时,其返回falsecharT().

此函数等效于strlen(对于char)和wcslen(对于wchar_t).

参数

s
指向以空字符结尾的字符序列的指针。
成员类型char_type字符类型(即,char_traits 中的类模板参数)。

返回值

返回s的长度。

size_t 是一个无符号整数类型。

示例

1
2
3
4
5
6
7
8
9
10
11
12
// char_traits::length
#include <iostream>   // std::cout
#include <string>     // std::char_traits

int main ()
{
  const char * foo = "String literal";
  std::cout << "foo has a length of ";
  std::cout << std::char_traits<char>::length(foo);
  std::cout << " characters.\n";
  return 0;
}

输出
foo has a length of 14 characters.


复杂度

与返回的值呈线性关系。

异常安全

如果s指向以空字符结尾的字符序列,则此成员函数在任何标准特化中都不会引发异常(无抛出保证)。
否则,将导致未定义行为

另见