• C中memcpy函数用法


    1、函数原型

    void *memcpy(void *destin,void *source,unsigned n);

    其中,

    • destin代表用于存储复制内容的目标数组,类型强制转换为void*指针。
    • source表示指向要复制的数据源,类型`强制转换为void*指针。
    • n表示要被复制的字节数

    该函数返回一个指向目标存储区destin的指针。如果destin存在数据,将会被覆盖。该函数存在与头文件string.h中。

    2、实现的功能

    从source所指的内存地址的起始位置开始拷贝n个字节到目标destin所指的内存地址的起始位置中。

    3、memcpy与strcpy区别:

    • strcpy只能复制字符串,而memcpy可以复制任意内容,如:字符数组、整形、结构体、类等
    • strcpy不需要指定长度,它遇到被复制字符的串结束符“”才结束,所以容易溢出。memcpy则根据第三个参数决定复制的长度。
    • 通常在复制字符串时用strcpy,而需要复制其他类型数据时则一般用memcpy。

    4、程序案例:

    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    #define N 9
    int main()
    {
    
            char* a=(char*)malloc(sizeof(char)*N);
            char* b="Who are you?";
            memcpy(a,b,N);
            printf("%s
    ",a);
    
            return 0;
    }

    运行结果:

    Who are y

  • 相关阅读:
    Echarts入门踩坑记录
    作业帮前端面经
    猿辅导前端面经
    昆仑万维前端面经
    顺丰科技前端面经
    云从科技前端面经
    亿联网络前端面经
    寒武纪前端面经
    纽约州交通事故数据可视化
    Vue中Object和Array数据变化侦测原理
  • 原文地址:https://www.cnblogs.com/wqaz-0-1-2-3/p/13380992.html
Copyright © 2020-2023  润新知