std::strlen
来自cppreference.com
在标头 <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
参阅
返回宽字符串长度 (函数) | |
返回下一个多字节字符中的字节数 (函数) |