好嗨难
2020-11-29 18:35
bool List::ListDelete(int i, int* e)
{
*e = m_pList[i];
for (int k = i + 1; k < m_iLength; k++)
{
m_pList[k - 1] = m_pList[k]; 这里可以写成m_pList[i]=m_pList[i+1]吗
}
m_iLength--;
return true;
}
m_pList[i]=m_pList[i+1]的话,一定不行, 因为for循环不会改变i值。
但如果是 m_pList[k]=m_pList[k+1] 需要修改for循环里面对k的赋值和判断,然后可以运行。
如果不改k的话,是不能实现想要的效果的(会删掉从这个元素 后一个元素的值)。
数据结构探险之线性表篇
57563 学习 · 257 问题
相似问题