这是一个编程题,动手做做才会有体会。给一个数组和一个值,从数组中删除这个指定的值的所有出现,并且返回新的数组的长度。size_t remove_elem(T* array, size_t len, T elem) {}。
#include <iostream>
using namespace std;
int remove_item(int* array, int len, const int target){
if(!array || len <= 0){
return -1;
}
int index =0;
int* s =array;
for(int i=0; i<len; ++i){
if(array[i] != target){
s[index++] = array[i];
}
}
return index;
}
int main(){
int array[]= {1,2,3,4,5,2,3,4,5,6,2};
int len =sizeof(array)/sizeof(array[0]);
int length =remove_item(array, len, 2);
cout<< "new length: "<< length<< endl;
if(length> 0){
for(int i=0; i<length; ++i){
cout << array[i]<< " ";
}
cout << endl;
}
return-1;
}