逆置字符数组
编写一个函数 reverse_string(char * string)(递归实现)
实现:将参数字符串中的字符反向排列。
要求:不能使用C函数库中的字符串操作函数。
非递归
函数体:
该函数的主要思路:
逆置字符串,循环的方式实现非常简单
- 给两个指针,left放在字符串左侧,right放在最后一个有效字符位置
- 交换两个指针位置上的字符
- left指针往后走,right指针往前走,只要两个指针没有相遇,继续2,两个指针相遇后,逆置结束
void reverse_string1(char* arr)
{
char *left = arr;
char *right = arr + strlen(arr) - 1;
while (left<right)
{
char tmp = *left;
*left = *right;
*right = tmp;
left++;
right--;
}
}
具体实现:
#include <stdio.h>
#