C++:memset ,memcpy和strcpy的根本区别


Posted in 面试题 onApril 27, 2013
#include “memory.h”
memset用来对一段内存空间全部设置为某个字符,一般用在对定义的字符串进行初始化为‘ ‘或‘\0′;例:char a[100];memset(a, ‘\0′, sizeof(a));
memcpy用来做内存拷贝,你可以拿它拷贝任何数据类型的对象,可以指定拷贝的数据长度;例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),会造成b的内存地址溢出。
strcpy就只能拷贝字符串了,它遇到’\0′就结束拷贝;例:char a[100],b[50];strcpy(a,b);如用strcpy(b,a),要注意a中的字符串长度(第一个‘\0′之前)是否超过50位,如超过,则会造成b的内存地址溢出。
strcpy
原型:extern char *strcpy(char *dest,char *src);
用法:#include
功能:把src所指由NULL结束的字符串复制到dest所指的数组中。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。
memcpy
原型:extern void *memcpy(void *dest, void *src, unsigned int count);
用法:#include
功能:由src所指内存区域复制count个字节到dest所指内存区域。
说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。
Memset
原型:extern void *memset(void *buffer, char c, int count);
用法:#include
功能:把buffer所指内存区域的前count个字节设置成字符c。
说明:返回指向buffer的指针。

Tags in this post...

面试题 相关文章推荐
几道PHP的面试题
May 19 面试题
随机分配座位,共50个学生,使学号相邻的同学座位不能相邻
Jan 18 面试题
链表面试题-一个链表的结点结构
May 04 面试题
渗透攻击的测试步骤
Jun 07 面试题
别名指示符是什么
Oct 08 面试题
Shell编程面试题
May 29 面试题
软件测试工程师面试问题精选
Oct 28 面试题
EJB的基本架构
Sep 22 面试题
新锐科技Java程序员面试题
Jul 25 面试题
什么时候用assert
May 08 面试题
J2EE包括哪些技术
Nov 25 面试题
Delphi软件工程师试题
Jan 29 面试题
C++的几个面试题附答案
Aug 03 #面试题
为什么会有内存对齐
Oct 10 #面试题
数组越界问题
Oct 21 #面试题
static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
Feb 22 #面试题
介绍一下#error预处理
Sep 25 #面试题
const char*, char const*, char*const的区别是什么
Jul 09 #面试题
雅虎笔试题(字符串操作)
Mar 24 #面试题
You might like
PHP中上传大体积文件时需要的设置
2006/10/09 PHP
用PHP实现小写金额转换大写金额的代码(精确到分)
2012/01/10 PHP
PHP中date与gmdate的区别及默认时区设置
2014/05/12 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
php中Snoopy类用法实例
2015/06/19 PHP
PHP程序员的技术成长规划
2016/03/25 PHP
用JavaScrpt实现文件夹简单轻松加密的实现方法图文
2008/09/08 Javascript
基于jQuery的输入框无值自动显示指定数据的实现代码
2011/01/24 Javascript
修改好的jquery滚动字幕效果实现代码
2011/06/22 Javascript
基于JQuery的一句话搞定手风琴菜单
2012/09/14 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
kindeditor编辑器点中图片滚动条往上顶的bug
2015/07/05 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
2015/09/09 Javascript
JavaScript检查子字符串是否在字符串中的方法
2016/02/03 Javascript
使用递归遍历对象获得value值的实现方法
2016/06/14 Javascript
js遍历map javaScript遍历map的简单实现
2016/08/26 Javascript
微信公众号支付H5调用支付解析
2016/11/04 Javascript
JavaScript运动框架 解决防抖动问题、悬浮对联(二)
2017/05/17 Javascript
React Native使用Modal自定义分享界面的示例代码
2017/10/31 Javascript
详解vue静态资源打包中的坑与解决方案
2018/02/05 Javascript
利用Angular2的Observables实现交互控制的方法
2018/12/27 Javascript
vue-cli系列之vue-cli-service整体架构浅析
2019/01/14 Javascript
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
webpack.DefinePlugin与cross-env区别详解
2020/02/23 Javascript
Python 深入理解yield
2008/09/06 Python
基于python requests selenium爬取excel vba过程解析
2020/08/12 Python
Reebonz中国官网:新加坡奢侈品购物网站
2017/03/17 全球购物
英国标准协会商店:BSI Shop
2019/02/25 全球购物
Java程序员面试90题
2013/10/19 面试题
更夫岗位责任制
2014/02/11 职场文书
最新结婚典礼主持词
2014/03/14 职场文书
师德标兵事迹材料
2014/12/19 职场文书
2015年大学生党员承诺书
2015/04/27 职场文书
学校就业保障协议书
2019/06/24 职场文书
python中使用 unittest.TestCase单元测试的用例详解
2021/08/30 Python
html,css,javascript是怎样变成页面的
2023/05/07 HTML / CSS