从数组中删除值

时间:2014-01-27 10:44:57

标签: c arrays

有没有简单的方法从数组中删除值,然后将所有其他值移到其位置,即有点像位移?

例如,假设我有一个数组

a[5] = {0x01,0x02,0x03,0x04,0x05};

我想删除前两个值并移动其余值,以便数组变为:

a[5]= {0x03,0x04,0x05,0x00,0x00};

有没有简单的方法可以做到这一点,而无需创建新数组并使用for循环传递a[1]之后的所有值?

1 个答案:

答案 0 :(得分:1)

我不确定你使用的语言是什么,但一般的想法可能就是这个

for(i=0; i<(5-2); i++){
    a[i] = a[i+2];
}
a[3] = a[4] = 0;

因此,您不需要数组副本,只需在现有数据中移位值即可。