std::strlen
来自cppreference.com
<tbody>
</tbody>
| 在标头 <cstring> 定义
|
||
std::size_t strlen( const char* str ); |
||
返回给定字节字符串的长度,即 str 指向其首元素的字符数组中直到而不包含首个空字符的字符数。若 str 所指向的字符数组中无空字符,则行为未定义。
参数
| str | - | 指向要检验的空终止字节字符串的指针 |
返回值
空终止字符串 str 的长度。
可能的实现
std::size_t strlen(const char* start)
{
// 新手注意:未检查 start 是否是 nullptr!
const char* end = start;
while (*end != '\0')
++end;
return end - start;
}
|
示例
运行此代码
#include <cstring>
#include <iostream>
int main()
{
const char str[] = "dog cat\0mouse";
std::cout << "没有空字符: " << std::strlen(str) << '\n'
<< "有空字符: " << sizeof str << '\n';
}
输出:
没有空字符: 7
有空字符: 14
参阅
| 返回宽字符串长度 (函数) | |
| 返回下一个多字节字符中的字节数 (函数) | |
strlen 的 C 文档
| |