C语言中memcpy 函数的用法详解

2025-05-27 0 34

C语言memcpy 函数的用法详解

memcpy(内存拷贝函数)

c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。

?

1

2
void* memcpy(void* destination, const void* source, size_t num);

void* dest 目标内存 const void* src 源内存 size_t num 字节个数

库中实现的memcpy函数

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17
struct {

char name[40];

int age;

} person, person_copy;

int main()

{

char myname[] = "Pierre de Fermat";

/* using memcpy to copy string: */

memcpy(person.name, myname, strlen(myname) + 1);

person.age = 46;

/* using memcpy to copy structure: */

memcpy(&person_copy, &person, sizeof(person));

printf("person_copy: %s, %d \\n", person_copy.name, person_copy.age);

system("pause");

return 0;

}

C语言中memcpy 函数的用法详解

模拟实现memcpy函数

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22
void* My_memcpy(void* dest, const void* src, size_t num)

{

assert(dest);

assert(src);

void* p = dest;

while (num--)

{

*(char*)dest = *(char*)src;

dest = (char*)dest + 1;

src = (char*)src + 1;

}

return p;

}

int main()

{

char dest[56];

char src[] = "abcb xxxx zzzzzzzzzzzzy";

printf("%s\\n", My_memcpy(dest, src, strlen(src) + 1));

system("pause");

return 0;

}

C语言中memcpy 函数的用法详解

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 C语言中memcpy 函数的用法详解 https://www.kuaiidc.com/74203.html

相关文章

发表评论
暂无评论