strlen(t)-1 这个看不懂?
这个这样理解:假设字符串数组是t[10]=abcdefghs'\0',strlen(t)=9,
求最后一个元素下角标即i的下角标,便可求出t[9]=s,
所以i=9-1=8,
(j=0;j<i;j++) /*t[j]从t[0]开始依次将t[j]与t[i+1]作比较 t[0]与t[1]比较 对应ASCⅡ码大的放到t[i+1]……
/*直到 (j=i-1)<i 循环条件成立,t[i-1]与t[i-1+1]比较
同学。。你这是在问问题还是在自问自答?
strlen(t)=9,说明t数组的最大下标是8,也就是t[8]=s而不是t[9]。。t[9]已经是结束符了。
答案里的i从strlen(t)-1开始循环然后每次自减1,就是从t数组的最后一个元素s开始往前循环的意思。
回复 qqq:本来想回答别人的问题 然后推了一下 自己也看不懂了。
现在懂了 t[10]表示有十个元素 最后一个元素是t[10-1]是'\0',而要求的最后一个元素是t[10-1-1],即倒数第二个元素。
回复 qqq:谢谢老师
回复 Toughwind:不客气
回复 qqq:那为什么不考虑第一个元素?a【0】