//自身倒序
void deal(char ** a,char* b,char c)
{
if(*b)
deal(a,b+1,*b);
*(*a)++ = c;
}
void reverse(char *str)
{
deal(&str,str,0);
}
//倒序到异地
char *reverse(char *str1,char *str2)
{
if(*(str1+1))
str2 = reverse(str1+1,str2);
*str2++=*str1;
return &(*str2 = 0);
}