std::strlen
来自 cppreference.com
定义在头文件 <cstring> 中 |
||
std::size_t strlen( const char* str ); |
||
返回给定字节字符串的长度,即字符数组中从第一个元素(由 str 指向)到第一个空字符(不包含空字符)之间的字符数量。如果 str 指向的字符数组中没有空字符,则行为未定义。
内容 |
[编辑] 参数
str | - | 指向要检查的以空字符结尾的字节字符串的指针 |
[编辑] 返回值
以空字符结尾的字符串 str 的长度。
[编辑] 可能的实现
std::size_t strlen(const char* start) { // NB: start is not checked for 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 << "without null character: " << std::strlen(str) << '\n' << "with null character: " << sizeof str << '\n'; }
输出
without null character: 7 with null character: 14
[编辑] 另请参阅
返回宽字符串的长度 (函数) | |
返回下一个多字节字符的字节数 (函数) | |
C 文档 for strlen
|