strlen

strlen

learn/c

在 C 语言里,strlen 函数主要用于计算字符串的长度,也就是字符串中包含的字符数量。strlen() 函数的工作原理是从字符串的起始位置开始,逐个字符进行计数,直到遇到字符串结束标志 '\0' 为止,并且最终统计的字符串长度不包含这个结束标志 '\0'

函数原型

C
1
2
3
4
5
6
7
8
9
10
11
12
13
size_t strlen(const char *str);

```c
#include <stdio.h>
#include <string.h>

int main() {
    // 计算包含转义字符的字符串长度
    printf("%zu\n", strlen("c:\\test\\121")); 
    // 计算包含中文的字符串长度
    printf("%zu\n", strlen("我是一个字符串")); 
    return 0;
}

注意事项

  1. strlen 函数只能用于计算以 '\0' 结尾的字符串长度,如果传入的字符串没有 '\0' 结尾,strlen 函数的行为将是未定义的。
  2. strlen 函数返回的是 size_t 类型,这是一个无符号整数类型,通常用于表示大小和计数。
  3. strlen 函数的时间复杂度是 O(n),其中 n 是字符串的长度。因此,对于非常长的字符串,使用 strlen 函数可能会比较耗时。