给定一个索引和一个整数数组,我需要通过使用 memcpy()
删除给定数组中存储在给定索引中的元素。新的元素集将存储在给定的数组中。
这是我想做的事情的一个例子,尽管我在实现它时遇到了困难。
所以 arrayElem
在删除 10 之后看起来像这样:
最佳答案
您不能使用 memcpy ,因为源和目标重叠,但您可以使用 memmove ,例如:
memmove(&a[1], &a[2], 5 * sizeof(a[0]));
这会将从 a[2]
开始的 5 个元素向下复制到从 a[1]
开始的 5 个元素,注意源和目标区域重叠。
关于c - 在数组中使用 memcpy 删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31320242/