如何用递归函数说反话

要如何用递归函数实现说反话,看了帖子发现好像没有这种方法,知道的可以分享一下吗

一个字符串,下标从0开始,在递归里先输出当前字符后再进入递归是正向输出字符串。
先进入递归,递归返回后再输出当前字符是倒序输出字符串。


//说反话?是反转的意思吗?
//for example
void reverse(char *s, int len, int p) {
    if(p==len) return;
    reverse(s, len, p+1);
    printf("%c", s[p]);
}

void reverse2(char *s, int p) {
    if(s[p]=='\0') return;
    reverse2(s, p+1);
    printf("%c", s[p]);
}

int main() {
   reverse("abc", 3, 0);//反向输出cba
   prontf("\n");
   reverse2("abc", 0); //和上面一样效果
   return 0;
}