指针问题,那位帮解释一下
为什么要用两个p--,不明白
----------------解决方案--------------------------------------------------------
这是把字符串倒着输出了 q先指向字符串首(定义部分)
for(p=q;*p!='\0';)p++; p最终指向字符串结束标志
最后这个for语句 是输出字符的 p>=q 就是倒着输出倒字符串首就停止了
*p 是p做指向的字符
'\n' 回车
----------------解决方案--------------------------------------------------------
简单点就是先退到字母e再倒着输出
----------------解决方案--------------------------------------------------------
先的P--是初始条件,后边的P--是循环变化!
----------------解决方案--------------------------------------------------------
不要后面那个P--它不能循环吗
----------------解决方案--------------------------------------------------------
以下是引用tanga在2006-3-7 13:27:00的发言:
不要后面那个P--它不能循环吗
不要后面那个P--它不能循环吗
不要的话就成死循环了啦..
----------------解决方案--------------------------------------------------------
不会啊,当p<q的时候,也就是p移到q前面了,条件为假就结束循环啊
----------------解决方案--------------------------------------------------------
以下是引用tanga在2006-3-7 13:32:00的发言:
不会啊,当p<q的时候,也就是p移到q前面了,条件为假就结束循环啊
不会啊,当p<q的时候,也就是p移到q前面了,条件为假就结束循环啊
不要第二个for语句后面的p--确实会死循环,它的作用是顺序输出eguagnaL,并引导循环的终止条件p<q的出现
如果没了它,程序将会不断的输出e,因为p的地址一直无法改变
其实第二个for语句里的初始条件p--可以不要,这样对你的理解来说可能会好点
[此贴子已经被作者于2006-3-7 13:52:38编辑过]
----------------解决方案--------------------------------------------------------
哦,知道了,谢谢
----------------解决方案--------------------------------------------------------