这个主要用于我个人的学习笔记,便于以后查询,顺便分享给大家。
想必在用C的时候难免会与数组,指针,内存这几样东西打交道,先以数组为例,例如有一个数组int a[5] = {1, 2, 3, 4, 5},我们要将数组a里面的数据复制到数组b中,一般刚刚接触C语言的我们会怎么做?我们一般会想到用循环来做吧
1 inti;2 int a[5] = {1, 2, 3, 4, 5}, b[5];3
4 for(i = 0; i < 5; i++)5 {6 b[i] =a[i];7 }
View Code
但是,如果有多个数组要复制,或者强迫症看不惯自己写的这么臃肿的代码,不想这样写,我们该怎么办?这时就要用到接下来要介绍的函数memcpy了。
memcpy
原型:
void *memcpy(void *dest, const void *src, size_t n);
需要的头文件:
#include
用法:
memcpy函数是内存拷贝函数,功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。
因为这个函数是直接操作内存的,所以我们一开始那个例子的执行效率会大大提高。不懂怎么用?我们来看一下代码就行。
1 #include
2
3 int main(void)4 {5 i