0

my_memcpy(根据大小从源复制到目标的内存)的实现使用了大量的指针算法,这是一种非常常见的实现方法。

问题:根据某些标准,我的代码不应该使用指针算法,但可以使用数组。

有什么方法可以在不使用任何指针算法的情况下实现该功能?

我希望在不使用指针的情况下实现以下逻辑:

while (u32_length >= SIZE)
{
    *u32p_dst = *u32p_src;  
     u32p_dst++;
     u32p_src++;
     u32_length -= SIZE;            
}
....
....    
4

2 回答 2

2

下面的呢,

unsigned i = 0;
while(u32_length >= SIZE){
   u32p_dst[i] = u32p_src[i];
   ++ i; 
   u32_length -= SIZE;
}
于 2013-10-08T05:12:53.363 回答
0

实际上,您可以在这里将指针和数组元素视为相同

为了提高性能,通常使用指针会更快(但在大多数情况下,这不是瓶颈)

于 2013-10-08T06:30:36.403 回答