繁体   English   中英

在C中复制int8_t数组

[英]Copying an array of int8_t in C

我有以下几点:

int8_t rtp[size];
int8_t holding[size];

我想价值在复制rtpholding

使用memcpy()进行简单复制。

无论对象的类型如何,此方法均有效。
如果目标是复制整个对象,则确保大小相同是一个很好的保障。

assert(sizeof holding == sizeof rtp);
memcpy(holding, rtp, sizeof holding);

如果对象可能重叠-或不确定,请使用memmove()
这是有时慢一点 通常,这种潜在的性能轻微降低是微不足道的。

memmove(holding, rtp, sizeof holding);

您可以使用memcpy复制整个数组。

memcpy(holding, rtp, size * sizeof(int8_t));

我想你可以这样

int i;
for(i = 0; i < size/*The size of the array*/, i++){
 holding[i] = rtp[i];
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM