关注

【C语言】求字符串长度,三种方法(库函数,指针运算)简单易懂!

目录

一,strlen函数

1,strlen函数

2,strlen函数使用

 二,getchar()函数

1,getchar函数

2,代码

 三,指针运算

代码:

四,小结

一,strlen函数

1,strlen函数

strlen函数:计算的是字符串str的长度,从字符的首地址开始遍历,以 '\0' 为结束标志,然后将计算的长度返回,计算的长度并不包含'\0'。

size_t  strlen (const char* str);

结论:

函数的参数为------const char* str:字符指针

返回值的类型------size_t:无符号整数(即:unsigned int)

2,strlen函数使用

使用函数时要用头文件

#include <string.h>

即:

#include <stdio.h>
#include <string.h>
int main()
{
	char arr[] = "abcdefg";
	int num = strlen(arr);
	printf("长度为:%d\n",num);
	return 0;
}

运行结果:

 二,getchar()函数

1,getchar函数

函数原型:

int getchar ( void );

功能: 

从 stdin 中获取字符。

注:stdin 是指标准输入,通常就是我们日常使用的键盘

当用getchar进行输入时,如果输入的第一个字符为有效字符(即输入是文件结束符EOF,Windows下为组合键Ctrl+Z,Unix/Linux下为组合键Ctrl+D),那么只有当最后一个输入字符为换行符´/n´(也可以是文件结束符EOF,EOF将在后面讨论)时,getchar才会停止执行,整个程序将会往下执行

2,代码

 

#include <stdio.h>
int main()
{
	int a;
	int m = 0;
	while (a = getchar() != '\n')
	{
		m++;
	}
	printf("%d\n", m);
	return 0;
}

运行结果:

 三,指针运算

都知道:

指针+整数=指针

那么反过来:

指针-指针=整数(两个指针之间相差的个数)

代码:

#include <stdio.h>

int len(char* s)
{
	char* p = s;
	while (*p != '\0')
		p++;
	return p - s;
}
int main()
{
	printf("长度为:%d\n", len("abcdef"));
	return 0;
}

运行结果: 

四,小结

以上就是关于求字符串的内容了,具体还需宝子们去实践,如果觉得该博客对你有用的话,希望一键三连,点个关注不迷路,谢谢支持! 

转载自CSDN-专业IT技术社区

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/Gao123456fy/article/details/136698020

评论

赞0

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--