有关循环的一个问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 03:28:24
这是来自数据结构书中的一个例子
p=&(l.elem[i-1]); //p是顺序链表中的一个位置 l.elem[i-1]意思是链表L中第i-1个元素
e=*p
for (++p;p<=q;++p) *(p-1)=*p
++p是不是就相当于&(l.elem[i])呢 这个初始值以后会不会变呢(每次都加1)
我的意思是这个FOR循环是否等价于
for(l.elem[i];p<=q;++p)


for (++p;p<=q;++p)看这个就知道会变了;
第一个设定了初始值,p先自增一个地址;
然后判断p是不是小于等于q;
然后执行循环体,完成后将p再自增一个地址;

两个执行的过程是相同的,但是执行完成后的指针地址是不一样的。

我的意思是这个FOR循环是否等价于
for(l.elem[i];p<=q;++p)