每日一题 -- 不使用变量实现c语言的strlen函数
每日一题 -- 不适用变量实现c语言的strlen函数
问题描述:编写一个c语言函数strlen,要求在其中不能够使用任何的变量
思路:如果在函数体重不能使用变量,同时考虑到斐波那契数列的递归求解的过程,可以联想到使用“递归”来实现。
实现代码:
#include <stdio.h>
#include <stdlib.h>
// strlen实现,但是在其中不能使用任何变量
int myStrlen(char* str)
{
if ('\0' == *str)
{
return 0;
}
else
{
return (1 + myStrlen(str + 1));
}
}
int main()
{
char* str = "hello world";
printf("%d\n", myStrlen(str));
return 0;
}
#include <stdlib.h>
// strlen实现,但是在其中不能使用任何变量
int myStrlen(char* str)
{
if ('\0' == *str)
{
return 0;
}
else
{
return (1 + myStrlen(str + 1));
}
}
int main()
{
char* str = "hello world";
printf("%d\n", myStrlen(str));
return 0;
}
如果您觉得不错,欢迎扫码支持下。
作者:许强1. 本博客中的文章均是个人在学习和项目开发中总结。其中难免存在不足之处 ,欢迎留言指正。 2. 本文版权归作者和博客园共有,转载时,请保留本文链接。