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

面试题 相关文章推荐
使用useBean标志初始化BEAN时如何接受初始化参数
Feb 11 面试题
腾讯技术类校园招聘笔试试题
May 06 面试题
广州品高软件.net笔面试题目
Apr 18 面试题
最新远光软件笔试题面试题内容
Nov 08 面试题
程序员机试试题汇总
Mar 07 面试题
杭州信雅达系统.NET工程师面试试题
Feb 08 面试题
程序集与命名空间有什么不同
Jul 25 面试题
Solaris操作系统的线程机制
Dec 23 面试题
linux系统都有哪些运行级别
Mar 26 面试题
现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,提供reset
Nov 09 面试题
Java中的类包括什么内容?设计时要注意哪些方面
May 23 面试题
Ruby如何定义一个类
Oct 08 面试题
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
解决phpmyadmin中缺少mysqli扩展问题的方法
2013/05/06 PHP
php stream_get_meta_data返回值
2013/09/29 PHP
Laravel 中获取上一篇和下一篇数据
2015/07/27 PHP
图文详解phpstorm配置Xdebug进行调试PHP教程
2016/06/13 PHP
php 基础函数
2017/02/10 PHP
解决windows上php xdebug 无法调试的问题
2020/02/19 PHP
常见JS效果之图片减速度滚动实现代码
2011/12/08 Javascript
Jquery方式获取iframe页面中的 Dom元素
2014/05/07 Javascript
原生js和jquery实现图片轮播特效
2015/04/23 Javascript
JavaScript中toString()方法的使用详解
2015/06/05 Javascript
Vue2.0实现1.0的搜索过滤器功能实例代码
2017/03/20 Javascript
Vue.js展示AJAX数据简单示例讲解
2017/03/29 Javascript
详解使用nvm安装node.js
2017/07/18 Javascript
浅谈mvvm-simple双向绑定简单实现
2018/04/18 Javascript
解决Layui选择全部,换页checkbox复选框重新勾选的问题方法
2018/08/14 Javascript
在Echarts图中给坐标轴加一个标识线markLine
2020/07/20 Javascript
nodejs处理tcp连接的核心流程
2021/02/26 NodeJs
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
[45:18]完美世界DOTA2联赛循环赛 PXG vs IO 第二场 11.06
2020/11/09 DOTA
python 字符串格式化代码
2013/03/17 Python
Python修改Excel数据的实例代码
2013/11/01 Python
Python基于回溯法子集树模板解决0-1背包问题实例
2017/09/02 Python
Python实现自动为照片添加日期并分类的方法
2017/09/30 Python
Python实现二叉搜索树BST的方法示例
2019/07/30 Python
Python中print函数简单使用总结
2019/08/05 Python
python实现遍历文件夹图片并重命名
2020/03/23 Python
Python中的With语句的使用及原理
2020/07/29 Python
Python连接mysql数据库及简单增删改查操作示例代码
2020/08/03 Python
惠普美国官方商店:HP Official Store
2016/08/28 全球购物
中粮集团旗下食品网上购物网站:我买网
2016/09/22 全球购物
《闻一多先生的说和做》教学反思
2014/04/28 职场文书
国家机关领导干部民主生活会对照检查材料思想汇报
2014/09/17 职场文书
介绍信怎么写
2015/05/05 职场文书
装修公司管理制度
2015/08/05 职场文书
如何理解Vue前后端数据交互与显示
2021/05/10 Vue.js
MySQL主从搭建(多主一从)的实现思路与步骤
2021/05/13 MySQL