代码:
#include <stdio.h>
#include <string.h>
void ChangStr(char *str)
{
int Str_Len = strlen(str);//计算字符串长度
char *p = (char *)(str + Str_Len - 1);
char *q = (char *)(str + Str_Len - 1);
char tmp = '0';//定义一个交换的变量
while (p != str)
{
if (*q != '*')
{
p--;
q--;
}
if (*q == '*')
{
while (*p == '*')
{
if (p == str)
{
break;
}
p--;
}
tmp = *p;
*p = *q;
*q = tmp;
}
}
}
int main()
{
char arr[] = "Tu**lu**n**ba**by";
ChangStr(arr);
printf("arr:%s\n", arr);
char str1[] = "ab**cd**";
char str2[] = "ab**cd";
char str3[] = "**ab**cd**";
char str4[] = "**ab**cd";
char str5[] = "abcd";
char str6[] = "****";
ChangStr(str1);
printf("str1:%s\n", str1);
ChangStr(str2);
printf("str2:%s\n", str2);
ChangStr(str3);
printf("str3:%s\n", str3);
ChangStr(str4);
printf("str4:%s\n", str4);
ChangStr(str5);
printf("str5:%s\n", str5);
ChangStr(str6);
printf("str6:%s\n", str6);
return 0;
}