/* 非递归实现 */
void reverse(char *s)
{
char *head;
char *tail;
char tmp;
head = s;
tail = head + strlen(s) - 1;
while (head < tail) {
tmp = *head;
*head = *tail;
*tail = tmp;
head++;
tail--;
}
}
/* 递归实现 */
void reverse(char *str, int len)
{
if (len <= 1)
return;
char *end = str + len - 1;
char tmp;
tmp = *str;
*str = *end;
*end = tmp;
reverse(str + 1, len - 2);
}