c语言中for语句条件执行顺序,急急急求求求 10

StatusListInsert_Sq(SqList*L,inti,LElemType_Sqe){LElemType_Sq*newbase;LElemType_Sq*p,... Status ListInsert_Sq(SqList *L, int i, LElemType_Sq e)
{
LElemType_Sq *newbase;
LElemType_Sq *p, *q;

if(i<1 || i>(*L).length+1)
return ERROR; //i值不合法

if((*L).length >= (*L).listsize) //若存储空间已满,需开辟新空间
{
newbase = (LElemType_Sq*)realloc((*L).elem, ((*L).listsize+LISTINCREMENT)*sizeof(LElemType_Sq));
if(!newbase)
exit(OVERFLOW);

(*L).elem = newbase;
(*L).listsize += LISTINCREMENT;
}

q = &(*L).elem[i-1]; //q为插入位置

for(p=&(*L).elem[(*L).length-1]; p>=q; --p)
*(p+1) = *p; //插入位置及之后的元素右移

*q = e; //插入e
(*L).length++; //表长增1

return OK;
}

其中,
for(p=&(*L).elem[(*L).length-1]; p>=q; --p)
*(p+1) = *p; //插入位置及之后的元素右移
这个循环的执行顺序是什么?
展开
 我来答
chinaboyzyq
2019-09-23 · TA获得超过1.3万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:3206万
展开全部
p指针从数组的倒数第二个元素开始,不停的向左移动,直到让出插入点q.
也就是把倒数第二个元素移到倒数第一个元素,把倒数第三个元素移到倒数第二个元素,直到让出q位置,循环停止。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式