不同类型数组之间的数据拷贝

来源:互联网 发布:linux中cd的使用 编辑:程序博客网 时间:2024/06/05 16:56


工作中,需要将一个float类型的数组整体copy到一个double类型的数组中。

很显然,memcpy是不行的,因为float和double占用的字节数不一样。

本来打算用for循环一个一个元素赋值,但这方法肯定特慢,效率差。

不死心,查一查,原来std::copy能够搞定这个问题。

举例说明:

 double a[] = {1.618, 3.1416, 2.7, 0.707, 1.0}; float b[5]; std::copy(a, a + 5, b); 

简单之极!指定a的起始位置和终止位置就行了。

任意两个不同类型的数组均可运用此方法实现数组的拷贝,简单易用

0 0
原创粉丝点击