哪位大神帮忙解释下 q=L.elem+L.length-1这句,程序段在问题补充!

void ListDelete_Sq(SqList &L, int i, EType &e)
{EType *p, *q;
if (i<1 || i>L.length) EMessage("i值不合法");
p=&(L.elem[i-1]); //p为被删除元素的位置
e = *p; //被删除元素的值赋给e
q=L.elem+L.length-1;// 表尾元素的位置
for (++p;p<=q;++p) *(p-1)=*p; //移动相关元素
--L.length;
} // ListDelete_Sq

第1个回答  2013-09-15
我学的不是这个语言
不过从逻辑上看,他是一个将元素删除,再将后排的元素的键值重新排序的过程。
q=L.elem+L.length-1;// 表尾元素的位置
注释写的挺清楚的 这就是表尾元素的地址。本回答被提问者和网友采纳
第2个回答  2013-09-15
这是啥屁东西
相似回答