码迷,mamicode.com
首页 > 编程语言 > 详细

C语言--求字符串长度的三种解法

时间:2015-10-26 19:01:42      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:求字符串的长度

问题:

    求一个字符串的三种解法

一、计数的方法

#include<stdio.h>
#include<assert.h>
int my_strlen( char* str)
{
	int count=0;
	while (*str)
	{
		count++;
		str++;
	}
	return count;
}
int main(void)
{
	char *arr = "abcef";
	int ret = my_strlen(arr);
	printf("%d\n", ret);
}

二、指针-指针的方法

#include<stdio.h>
#include<assert.h>
int  my_strlen(const char*str)
{
	assert(srt);
	const char* ret = str;
	while (*ret++)
	{
		;
	}
	return(ret - str-1);
}
	
int main(void)
{

	char *arr = "abcdef";
	 printf("%d\n",my_strlen(arr));	
}

三、用递归的方法

#include<stdio.h>
#include<assert.h>
int my_strlen(char* srt)
{
	assert(srt);
	if (*srt == ‘\0‘)
	{
		return 0;
	}
	else
	{    
		srt++;
		return (1 + my_strlen(srt));
		
	}
}
int main(void)
{
	char *arr = "abcdef";
	printf("%d\n", my_strlen(arr));
}


本文出自 “程序的灵魂” 博客,请务必保留此出处http://9195095.blog.51cto.com/9185095/1706394

C语言--求字符串长度的三种解法

标签:求字符串的长度

原文地址:http://9195095.blog.51cto.com/9185095/1706394

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!