十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
根据查找到字符串中 '\0'字符的位置结束. '\0' 前面的个数为该字符串长度
创新互联公司成立于2013年,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站建设、外贸网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元临夏做网站,已为上家服务,为临夏各地企业和个人服务,联系电话:028-86922220
比如 "hello world!" 字符串长度为12 (字符串存储时结尾自动加上\0字符)
如果这样写 "hello \0world!" 字符串长度为6 (空格也算一个字符)
C语言中,计算字符串长度的函数为strlen。
1 形式:
int strlen(const char *s);
2 头文件:
string.h
3 功能:
计算字符串s的长度,并返回。
思路:因为字符串都是以'\0'作为结束标志,所以可以从字符串的第一个位置开始遍历,直到出现'\0'停止遍历,并每次下标后移,字符串的长度加1,最后返回字符串长度。
参考代码:
#include "stdio.h"
int strlen(char *s){//求字符串长度函数
int n;
for(n=0;s[n]!='\0';n++);
return n;
}
int main() {
char a[100];
gets(a);
printf("%d\n",strlen(a));
return 0;
}
/*
运行结果:
wqerqew
7
*/
C语言中字符串长度的函数是strlen(),一个字符的长度为1;
函数原型:
unsigned int strlen (char *s);头文件:
#include string.h参数说明:s为指定的字符串;
功能说明:strlen()用来计算指定的字符串s 的长度,不包括结束字符'\0';
返回值:返回字符串s 的字符数;
注意:strlen() 函数计算的是字符串的实际长度,遇到第一个'\0'结束。
示例:
#includestdio.h#includestring.hint main(){ char str[] = "ab\nxyz";//\n为回车字符,占一个字节 printf("strlen(str)=%d\n", strlen(str)); return 0;}//输出结果:strlen(str)=6 收起
正确的答案是5,题目选项有误。
首先strlen()函数返回的长度是不包含'\0',
第一个字符为:a
第二个字符为:b
第三个字符为:\n (换行符)
第四个字符为:2
第五个字符为:\ (\\转义为\)
所以答案为5。
(下图为实际代码演示)
扩展内容:
strlen()函数(C语言函数):
strlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值(长度不包含'\0')。
参考资料:strlen函数 - 百科