面试题c语言实现memcpy
时间: 2024-03-02 09:47:18 浏览: 132
基于C++执行内存memcpy效率测试的分析
5星 · 资源好评率100%
在C语言中,`memcpy`函数用于将一段内存的内容复制到另一段内存中。它的函数原型如下:
```c
void *memcpy(void *dest, const void *src, size_t n);
```
其中,`dest`是目标内存的指针,`src`是源内存的指针,`n`是要复制的字节数。
`memcpy`函数的实现可以通过循环遍历源内存的每个字节,并将其逐个复制到目标内存中。以下是一个简单的实现示例:
```c
void *memcpy(void *dest, const void *src, size_t n) {
char *d = (char *)dest;
const char *s = (const char *)src;
for (size_t i = 0; i < n; i++) {
d[i] = s[i];
}
return dest;
}
```
上述实现中,我们将目标内存和源内存都转换为`char`类型的指针,这样可以逐个字节地进行复制。循环遍历源内存的每个字节,并将其赋值给目标内存对应位置的字节。最后,返回目标内存的指针。
阅读全文