void p_r(char *s) {int len =strlen(s); char *t = s+len-1; while(t>=s){ printf("%c",*t); t=t-1; } }

2025-02-27 22:53:03
推荐回答(2个)
回答1:

while(t>=s)的意思是,当满足t大于等于s时,则循环执行:{
printf("%c",*t);
t=t-1;
}这段代码,直到 t大于等于s 不成立为止。
一开始t是指向字符串s的末尾的,所以一开始t确实大于s,但随着t=t-1;的执行,t会越来越小,所以最终t会变得小于s,此时while循环结束,程序会去执行后面的puts("");语句。

回答2:

t指针的地址大于s指针的地址