c++ strlen函数干嘛用,能详细点吗
3个回答
展开全部
strlen()是计算一个字符串的有效数据长度。
从你问题补充看,这里写的有问题,因为str不能是int类型,这样就不是字符串了,strlen()也不能正常工作了。
char str[1000];
strcpy( str , "hello world" ); //给str赋值
int i=strlen(str) ; //得到str中数据的长度,此时为11 = 5+1+5
字符串一定会有一个结束符,strlen在计算时,就是从str的首地址位置,一直到遇到\0为止,计算字符个数。返回给调用者。详情可查阅百科。
从你问题补充看,这里写的有问题,因为str不能是int类型,这样就不是字符串了,strlen()也不能正常工作了。
char str[1000];
strcpy( str , "hello world" ); //给str赋值
int i=strlen(str) ; //得到str中数据的长度,此时为11 = 5+1+5
字符串一定会有一个结束符,strlen在计算时,就是从str的首地址位置,一直到遇到\0为止,计算字符个数。返回给调用者。详情可查阅百科。
追问
是char 我打错了
追答
一般for循环遍历字符串,是从第一位一直到最后一位,写法一般如下:
for( i=0;i<strlen(str);i++ ) //i从0开始,当达到字符串长度时,结束循环
或
for( i=0;str[i] != '\0';i++ ) //i从0开始,当遇到字符串结束符时,结束循环 这个写法效率高一些,不用每次循环都计算一次串长度。
展开全部
strlen函数用来求字符串的长度,详见百度百科
http://baike.baidu.com/view/736226.htm
http://baike.baidu.com/view/736226.htm
参考资料: http://baike.baidu.com/view/736226.htm
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int main( )
{
char str0[8]={'a','b','c','d','e','f','i','g'};
char str1[]="abcdefig";
char str2[]="01234/056789" ;
char str3[]="abcse/0fgkij";
printf("strlen(str0)=%d/n",strlen(str0));
printf("strlen(str1)=%d/n",strlen(str1));
printf("strlen(str2)=%d/n",strlen(str2));
printf("strlen(str3)=%d/n",strlen(str3));
}
{
char str0[8]={'a','b','c','d','e','f','i','g'};
char str1[]="abcdefig";
char str2[]="01234/056789" ;
char str3[]="abcse/0fgkij";
printf("strlen(str0)=%d/n",strlen(str0));
printf("strlen(str1)=%d/n",strlen(str1));
printf("strlen(str2)=%d/n",strlen(str2));
printf("strlen(str3)=%d/n",strlen(str3));
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询