• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

stm32中内存拷贝函数memcpy和直接赋值哪个好和块?

huihui163 2020-05-25 浏览量:5968
看到有些程序中运用了memcpy函数,不明白和直接赋值有啥好处
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • memcpy是通过指针来提高速度的,如果你的赋值也是指针的,那么速度是差不多的。

    如果是用=赋值的,可能是memcpy更快一些

    • 发布于 2020-06-13
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:7
  • 内存拷贝函数需要分配内存完后,内存中有两份数据;而直接赋值的话,若是变量赋值,内存还有一份数据,另指针赋值,内存中同样只有一份数据,只不过有两个指向这个地址的指针。至于好坏,这就得看具体应用需求了,通常来讲内存拷贝效率更高,其实直接赋值和memset()功能更像。
    • 发布于2020-05-26
    • 举报
    • 评论 0
    • 0
    • 0

  • memcpy是库函数,函数功能完善,如果自己写复制函数也可以的,一般我们能用库函数就不会自己写函数
    • 发布于2020-05-26
    • 举报
    • 评论 0
    • 0
    • 0

  • memcpy属于库函数调用,

    对于连续的多数据拷贝,用memcpy效率高,对内存要求也高;


    • 发布于2020-05-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 我建议你直接内存拷贝,毕竟一般的应用还没有达到需要考虑效率这个问题的时候
    • 发布于2020-05-29
    • 举报
    • 评论 0
    • 0
    • 0

  • 看你代码实现,如果是一块区域,直接赋值的时候,还需要一个for循环做判断,执行for语句需要消耗时间,效率比不上memcpy

    如果只是一个字节,那效率基本一样

    • 发布于2020-06-05
    • 举报
    • 评论 0
    • 0
    • 0

  • 自己用指针写一个赋值函数应该是最快的了,memcpy还要调用库,直接赋值,也要寻址
    • 发布于2020-06-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 内存拷贝是使用指针进行的数据传输,速度要高于直接赋值的 
    • 发布于2020-06-28
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32中内存拷贝函数memcpy和直接赋值哪个好和块?