zoukankan      html  css  js  c++  java
  • strcpy、sprintf、memcpy的区别

    char*strcpy(char *dest, const char *src);

    其对字符串进行操作,完成从源字符串到目的字符串的拷贝,当源字符串的大小大于目的字符串的最大存储空间后,执行该操作会出现段错误。

    int sprintf(char*str, const char *format, ...)

    函数操作的源对象不限于字符串:源对象可以是字符串、也可以是任意基本类型的数据。主要是实现将其他数据类型转换为字符串

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

    实现内存的拷贝,实现将一块内存拷贝到另一块内存。该函数对源对象与目的对象没有类型现在,只是对内存的拷贝

    但是在软件升级中,当接收到网络传送的升级内容后,进行数据拷贝时,最好使用memcpy来进行数据的拷贝。因为strcpy、sprintf进行拷贝时,当检查到源字符串中有’’即ascii码为00)时,即认为数据结束符,就会停止拷贝

  • 相关阅读:
    申请奖励加分
    6.14
    6.11
    6.10
    6.9
    6.8
    6.7
    6.6
    6.5
    6.4
  • 原文地址:https://www.cnblogs.com/Ph-one/p/8545291.html
Copyright © 2011-2022 走看看