开发者

C语言中strlen()函数的使用详解

开发者 https://www.devze.com 2024-08-13 13:46 出处:网络 作者: 不会算法的笨小孩
目录1、strlen函数的各个参数介绍2、strlen函数的作用3、易错处分析4、模拟实现1、strlen函数的各个参数介绍
目录
  • 1、strlen函数的各个参数介绍
  • 2、strlen函数的作用
  • 3、易错处分析
  • 4、模拟实现

1、strlen函数的各个参数介绍

sizepython_t  strlen (const char* str)

C语言中strlen()函数的使用详解

①函数名为strlen

②返回值类型为size_t,这是一个无符号的类型,可能是整型,也可能是长整型。

③函数的参数是一个字符类型的数组,这个数组用char*类型来接收,且这个数组内容不能被修改。

2、strlen函数的作用

strlen函数是用来求字符串长度的函数,这个函数遇到‘\0’就会停止,且这个长度不包含‘\0’。

如,字符串“abcd\0ef”,这个字符串的长度为4,遇到'\0'之后就不再数了,且长度不包含‘\0’。

C语言中strlen()函数的使用详解

3、易错处分析

①返回值类型为无符号编程客栈整数,这就使得我们在使用时会出现一种情况,见代码如下:

#include<stdio.h>
#include<string.h>
int main()
{
	if (strlen("abc") - strlen("abcdef") >= 0)
		printf(">=\n");
	else
		printf("<\n");
	return 0;
}

通过代码,我们可能觉得这个打印的是“<”,但是,strlen函数返回的是无符号整数,无符号整数-无符号整数还是无符号整数,无符号整数是永远>=0的,所以打印的会是">="。运行结果如下:

C语言中strlen()函数的使用详解

4、模拟实现mNnkW

①方法一:计数器

size_t my_strlen1(编程客栈const char* ch)
{
	size_t count = 0;
	while (*ch)
	{
		count++;
		ch++;
	}
	return count;
}

②方法二:递归

size_t my_strlen2(const char* ch)
{
	if (*ch == '\0')
		return 0;
	return my_strlen2(ch + 1) + 1;
}

③方法三:指针-指针

size_t my_编程客栈strlen3(const char* ch)
{
	char* p = ch;
	while (*p)
	{
		p++;
	}
	return p - ch;
}

到此这篇关于C语言中strlen()函数的使用详解的文章就介绍到这了,更多相关C语言strlen()函数使用内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号