C语言中是否有一种方法可以将数组的所有元素复制到另一个数组中,而无需解析要复制的数组的所有元素?我可以使用指针吗?因为我知道函数可以自动获取数组中一定数量的元素,而只是说第一个元素的索引,所以大概(?)我可以做类似的事情...
例如,如果我有这两个数组:
int array[10];
int tocopy[3];
我说类似:
array[0] = tocopy
它也会自动填充array [1]和array [2]
这可能吗?
memmove()
如果数组不重叠,则可以使用或memcpy()
:
void *memmove(void *dest, const void *src, size_t n);
void *memcpy(void *dest, const void *src, size_t n);
例如:
memmove(array, tocopy, sizeof(tocopy);
就像这样:
array[0] = tocopy[0];
array[1] = tocopy[1];
array[2] = tocopy[2];
如注释中所建议,使用这些功能时也应注意不要超出数组范围,即:在为数组分配的内存之外进行读取或写入。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句