首页 > 编程笔记 > C语言笔记 阅读:20

C语言strlen()函数的用法(附带实例)

C语言标准库中的 strlen() 函数用于获取字符数组中的字符串长度。它从第一个字符开始计数,直到遇到 '\0',并返回累计的长度(不包括 '\0')。

程序中使用 strlen() 函数之前,需要引入头文件<string.h>。strlen() 函数的原型如下:
size_t strlen (const char * str);
str 是一个指向字符串首地址的指针,返回值是 size_t 类型的整数,用于表示字符串长度。

注意,参数 str 使用了const 修饰,表明函数内部无法修改指针所指向的字符。实参如果为非 const 的指针,则被转换为 const 指针。使用 const 具有以下两层含义:
返回值是一个 size_t 类型的整数。size_t 并不是一个新的关键字,它实际上是已有整数类型的别名。它可能是 unsigned int 的别名,也可能是 unsigned long 或 unsigned long long 的别名,这取决于编译器的实现。

如下是使用 strlen() 函数获取字符串长度的示例:
#include <stdio.h>
#include <string.h>
int main()
{
    char str[20] = "Hello";
    size_t size = sizeof(str);
    printf("sizeof=%d\n", size);
    size_t len = strlen(str);
    printf("len=%d\n", len);
    return 0;
}
运行结果为:

sizeof=20
len=5

sizeof(str) 测量数组本身所占用空间的大小,因此结果为 20。strlen(str) 测量从第一个元素开始,直到元素值为 '\0' 的字符串长度,因此结果为 5。

相关文章