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...

面试题 相关文章推荐
htmlentities() 和 htmlspecialchars()有什么区别
Jul 01 面试题
新电JAVA笔试题目
Aug 31 面试题
请写出 float x 与"零值"比较的 if 语句
Jan 04 面试题
描述内存分配方式以及它们的区别
Oct 15 面试题
恶意软件的定义
Nov 12 面试题
如何判断计算机可能已经中马
Mar 22 面试题
非常详细的C#面试题集
Jul 13 面试题
介绍一下linux文件系统分配策略
Feb 25 面试题
EJB与JAVA BEAN的区别
Aug 29 面试题
百度JavaScript笔试题
Jan 15 面试题
一套英文Java笔试题面试题
Apr 21 面试题
SOA面试题:如何在SOA中实现松耦合
Jul 21 面试题
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
ADODB的数据库封包程序库
2006/12/31 PHP
建站常用13种PHP开源CMS比较
2009/08/23 PHP
在yii中新增一个用户验证的方法详解
2013/06/20 PHP
php版小黄鸡simsimi聊天机器人接口分享
2014/01/26 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
JQuery 国际象棋棋盘 实现代码
2009/06/26 Javascript
JavaScript中判断函数是new还是()调用的区别说明
2011/04/07 Javascript
js jquery数组介绍
2012/07/15 Javascript
Jquery加载时从后台读取数据绑定到dropdownList实例
2013/06/09 Javascript
Js获取数组最大和最小值示例代码
2013/10/29 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
纯Javascript实现ping功能的方法
2015/03/20 Javascript
JavaScript实现Flash炫光波动特效
2015/05/14 Javascript
js密码强度校验
2015/11/10 Javascript
全面解析Bootstrap中tooltip、popover的使用方法
2016/06/13 Javascript
JS/jquery实现一个网页内同时调用多个倒计时的方法
2017/04/27 jQuery
vue-axios使用详解
2017/05/10 Javascript
Jquery把获取到的input值转换成json
2017/05/15 jQuery
nodejs async异步常用函数总结(推荐)
2017/11/17 NodeJs
jquery实现企业定位式导航效果
2018/01/01 jQuery
jquery实现的简单轮播图功能【适合新手】
2018/08/17 jQuery
微信小程序中显示倒计时代码实例
2019/05/09 Javascript
jquery图片预览插件实现方法详解
2019/07/18 jQuery
[05:04]DOTA2上海特级锦标赛主赛事第二日TOP10
2016/03/04 DOTA
[01:38]完美世界高校联赛决赛花絮
2018/12/02 DOTA
深入理解Python中字典的键的使用
2015/08/19 Python
Python使用urllib2模块抓取HTML页面资源的实例分享
2016/05/03 Python
用python实现的线程池实例代码
2018/01/06 Python
Python中的取模运算方法
2018/11/10 Python
Python进程,多进程,获取进程id,给子进程传递参数操作示例
2019/10/11 Python
Python opencv相机标定实现原理及步骤详解
2020/04/09 Python
Python join()函数原理及使用方法
2020/11/14 Python
美国猫狗药物和用品网站:PetCareRx
2017/01/05 全球购物
高三复习计划
2015/01/19 职场文书
解决SpringBoot文件上传临时目录找不到的问题
2021/07/01 Java/Android