strlen模拟实现的三种方法

第一种:基础玩法

int My_strlen1(char* str)
{
	assert(NULL != str);
	int count = 0;
	while(*str++)
	{
		count++;
	}
	return count;
}

第二种:不重新设置变量

int My_strlen2(char* str)
{
	assert(NULL != str);
	if('\0' != *str)
	{
		return 1 + My_strlen2(++str);
	}
	else
	{
		return 0;
	}
}

第三种:高级玩法

int My_strlen3(char* str)
{
	assert(NULL != str);
	char* strat = str;
	while('\0' != *str)
	{
		str++;
	}
	return str-strat;
}

猜你喜欢

转载自blog.csdn.net/USA_AM_1966/article/details/83066406