my_memcpy的实现(基于大小从源到目标的内存复制)使用了大量的指针算法,这是一种非常常见的实现方法。
问题:根据某些标准,我的代码不应该使用指针算法,但可以使用数组。
有没有办法在不使用任何指针算法的情况下实现该功能?
我希望在不使用指针的情况下实现以下逻辑:
while (u32_length >= SIZE)
{
*u32p_dst = *u32p_src;
u32p_dst++;
u32p_src++;
u32_length -= SIZE;
}
....
....
答案 0 :(得分:2)
以下内容,
unsigned i = 0;
while(u32_length >= SIZE){
u32p_dst[i] = u32p_src[i];
++ i;
u32_length -= SIZE;
}
答案 1 :(得分:0)
实际上你可以在这里处理指针和数组元素
提高性能,通常使用指针更快(但在大多数情况下这不是瓶颈)