C++将单个元素插入到数组指定位置或者删除指定位置的数组元素
C++将单个元素插入到数组指定位置或者删除指定位置的数组元素在C++的三种容器中,string 和 vector都有插入和删除的函数,数组的插入是将目标位置的元素及之后的元素向后移一位,而删除操作是将目标位置之后的所有元素向前移动一位。插入(insert)#include<iostream>using namespace std;void insert(int nums[],int l
·
C++将单个元素插入到数组指定位置或者删除指定位置的数组元素
在C++的三种容器中,string 和 vector都有插入和删除的函数,数组的插入是将目标位置的元素及之后的元素向后移一位,而删除操作是将目标位置之后的所有元素向前移动一位。
插入(insert)
#include<iostream>
using namespace std;
void insert(int nums[],int length,int target)
{
int i = length - 1;
while(i >= target)
{
nums[i + 1] = nums[i];
i--;
}
nums[target] = target;
for(int j = 0;j < length + 1;j++)
{
cout<<nums[j]<<endl;
}
}
int main()
{
int nums[] = {1,2,3,4,5,6};
int length = sizeof(nums)/sizeof(nums[0]);
cout<<length<<endl;
insert(nums,length,2);
}
删除(del)
#include<iostream>
using namespace std;
void del(int nums[],int length,int target)
{
int i = target;
while(i < length)
{
nums[i] = nums[i+1];
i++;
}
}
int main()
{
int nums[] = {1,2,3,4,5,6};
int target = 2;
int length = sizeof(nums)/sizeof(nums[0]);
del(nums,length,target);
for(int j = 0;j < length -1;j++)
{
cout<<nums[j]<<endl;
}
}
将数组传入到函数中,会自动被降为指针,所以for循环输出数组的时候,在定义的函数中,或者在主函数中,都是一样的。
小知识点
对于数组的初始化,其行数和列数必须是常量表达式,可以使用constexpr函数来检查是否是常量表达式
更多推荐
已为社区贡献1条内容
所有评论(0)