C语言 strcpy和memcpy区别详细介绍

 更新时间:2017年01月12日 14:47:40   投稿:lqh  
这篇文章主要介绍了C语言 strcpy和memcpy区别详细介绍的相关资料,需要的朋友可以参考下

C语言 strcpy和memcpy区别详细介绍

PS:初学算法,开始刷leetcode,Rotate array的预备知识(写的代码Time Limit Exceed难过)于是百度高效算法,本篇作为预备知识。

1、strcpy和strncpy函数

这个不陌生,大一学C语言讲过,其一般形式为strcpy(字符数组1,字符串2)作用是将字符串2复制到字符数组1中去。
EX:

char str1[10]='',str2[]={"China"}; 
strcpy(str1,str2); 

strncpy(str1,str2,2);作用是将str2中最前面2个字符复制到str1中,取代str1中原有的最前面2个字符。

2、memcpy函数

c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。
用法:void *memcpy(void *dest, const void *src, size_t n);

EX:

char *s1 = "csdn"; 
char *s2 = new char[10]; 
char *s3 = memcpy(s2,s1,5); 

3、strcpy和memcpy的区别。

1、复制的内容不同。strcpy只能复制字符串,而memcpy可以复制任意内容,例如字符数组、整型、结构体、类等。
2、复制的方法不同。strcpy不需要指定长度,它遇到被复制字符的串结束符"\0"才结束,所以容易溢出。memcpy则是根据其第3个参数决定复制的长度。
3、用途不同。通常在复制字符串时用strcpy,而需要复制其他类型数据时则一般用memcpy

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • C++回溯法实例分析

    C++回溯法实例分析

    这篇文章主要介绍了C++回溯法,实例讲述了回溯法的原理与实现方法,最后给出了回溯法解决八皇后的实例,需要的朋友可以参考下
    2014-09-09
  • C语言实现文件读写操作

    C语言实现文件读写操作

    这篇文章主要为大家详细介绍了C语言实现文件读写操作,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • C语言 运算符详细介绍及示例代码

    C语言 运算符详细介绍及示例代码

    本文介绍C语言 运算符,这里整理了运算符的基础知识,并附示例代码,希望能帮助刚刚开始学习 C语言的同学
    2016-08-08
  • 详解dll动态库的开发与调用及文件的读写小程序

    详解dll动态库的开发与调用及文件的读写小程序

    这篇文章主要介绍了详解dll动态库的开发与调用及文件的读写小程序的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • C++实现简单射击小游戏

    C++实现简单射击小游戏

    这篇文章主要为大家详细介绍了C++实现简单射击小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • C++中的friend友元函数详细解析

    C++中的friend友元函数详细解析

    友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类。友元函数的特点是能够访问类中的私有成员的非成员函数。友元函数从语法上看,它与普通函数一样,即在定义上和调用上与普通函数一样
    2013-09-09
  • C++ 构造函数中使用new时注意事项

    C++ 构造函数中使用new时注意事项

    本文主要介绍了C++ 构造函数中使用new时注意事项。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • CString,字符串,整数等相互转换方法(推荐)

    CString,字符串,整数等相互转换方法(推荐)

    下面小编就为大家带来一篇CString,字符串,整数等相互转换方法(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • C++快速排序的分析与优化详解

    C++快速排序的分析与优化详解

    这篇文章主要介绍了C++快速排序的分析与优化,非常经典的算法,分析也较为详尽,需要的朋友可以参考下
    2014-08-08
  • OpenCV实现图像轮廓检测以及外接矩形

    OpenCV实现图像轮廓检测以及外接矩形

    这篇文章主要为大家详细介绍了OpenCV实现图像轮廓检测以及外接矩形,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01

最新评论