要求:不能使用C函数库中的字符串操作函数。
#include <stdio.h>
#include <stdlib.h>
int p_strlen(char * str)
{
if (*str)
{
return 1 + p_strlen(str + 1);
}
return 0;
}
void reverse_string(char * str)
{
int end = p_strlen(str) - 1;
char tmp = str[0];
if (str[0])
{
str[0] = str[end];
str[end] = '\0';
reverse_string(str + 1);
str[end] = tmp;
}
}
int main()
{
printf("%d\n", p_strlen("bitekeji"));
char arr[] = "bitekeji";
reverse_string(arr);
puts(arr);
system("pause");
return 0;
}
本文介绍了一种不使用标准库函数来实现字符串长度计算及反转的方法。通过递归函数p_strlen()计算字符串长度,并利用reverse_string()递归地将字符串进行反转。文中提供了一个简单的示例,展示了如何调用这两个函数并输出反转后的字符串。
511

被折叠的 条评论
为什么被折叠?



