实现逻辑,就是将字符串从中间一分为二,互相换位置即完成了翻转的效果
#include <stdio.h>
#include <string.h>
//反转字符串
void rechange_str(char *str)
{
int len,i;
char tem;
if(str==NULL)
{
return ;
}
len = strlen(str);
for(i = 0;i<len/2;i++)
{
tem = str[i];
str[i] = str[len-i-1];
str[len-i-1] = tem;
}
}
int main()
{
char *str;
char z[] = "nihao";
str = z;
rechange_str(str);
printf("%s\n",str);
return 0;
}
创建一个指针变量,把数组的首地址赋值给指针变量,再传入rechange_str()中,在此,进行字符串反转操作。
函数是通过对指向地址的内容进行操作,也就是说,最终改变的就是z的值。