鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

memcpy接口

接口描述

memcpy优化接口。

接口格式

void *memcpy(void *dest, const void *src, size_t n);

参数释义

参数名

类型

描述

输入/输出

dest

指针数组

存储复制内容的目标数组。

输入/输出

src

指针数组

存储复制内容的源数组。

输入

n

整型数

要被复制的字节数。

输入

使用依赖

使用实例

  1. 编写memcpy测试代码。
    1. 新建“test.c”文件。
      1
      vi test.c
      
    2. “i”键进入编辑模式,添加如下测试代码。
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      #include <stdio.h>
      #include <stdint.h>
      #include <string.h>
      
      #define MAX_LENGTH 4096
      
      int main(int argc, char **argv)
      {
          uint8_t src[MAX_LENGTH] = {0};
          uint8_t dest[MAX_LENGTH] = {0};
          for (size_t i = 0; i < MAX_LENGTH; ++i) {
              src[i] = i;
          }
          memcpy(dest, src, MAX_LENGTH);
          if (memcmp(dest, src, MAX_LENGTH) == 0) {
              printf("memcpy succ!!\r\n");
          } else {
              printf("memcpy fail!!\r\n");
          }
          return 0;
      }
      
    3. “Esc”键退出编辑模式,输入:wq!并按“Enter”键保存退出文件。
  2. 编译“test.c”文件,生成test可执行文件。
    1
    gcc test.c -o test
    
  3. 运行test可执行文件。
    1
    LD_PRELOAD=/usr/lib64/libksal_libc.so ./test
    
    执行输出如下。
    1
    memcpy succ!!