方法一
#include "stdio.h"
#include "string.h"
int my_strlen(char *str)
{
int count=0;
while(*str!='\0')
{
count++;
str++;
}
return count;
}
void reverse_string(char arr[])
{
int left=0;
int right=my_strlen(arr)-1;
while(left<right)
{
int t;
t=arr[left];
arr[left]=arr[right];
arr[right]=t;
left++;
right--;
}
}
int main()
{
char arr[]="abcdef";
reverse_string(arr);
printf("%s\n",arr);
}
方法二
#include "stdio.h"
#include "string.h"
int my_strlen(char *str)
{
int count=0;
while(*str!='\0')
{
count++;
str++;
}
return count;
}
void reverse_string(char arr[])
{
char tmp=arr[0];
int len=my_strlen(arr);
arr[0]=arr[len-1];
arr[len-1]='\0';
if(my_strlen(arr+1)>=2)
reverse_string(arr+1);
arr[len-1]=tmp;
}
int main()
{
char arr[]="abcdef";
reverse_string(arr);
printf("%s\n",arr);
}