bzero和memset函数区别联系
bzero函数
函数原型:void bzero(void *s, int n);
头文件:#include <string.h>
功能:将字符串s的前n个字节置为0,一般来说n通常取sizeof(s),将整块空间清零。
返回值:无返回值
例子:
将一个数组清零:
char str[10];
bzero( str, sizeof(str) );
也可以将一个结构体清零:
struct node
{char a;int str[4];double b;
};struct node Test;
bzero(&Test,sizeof(Test));
memset函数
函数原型:void *memset(void *s,int c,size_t n);
头文件:#include <string.h> 或者#include <memory.h>
说明:将s中前n个字节替换为c并返回s
作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法
这里我们看到c是int类型的,需要注意两点:
1)若s指向的地址是char类型的,c的值可以是任意字符值;
2)若s指向的地址不是char类型,c的值只能是-1或者0。
因为-1和0转化成二进制后每一位都是一样的,设int型占4个字节,则-1=0XFFFFFFFF, 0=0X00000000。
例子:
同上将str清零:
memset( str,0,sizeof(str) );
将上面的Test变量清零:
memset( &Test,0,sizeof(Test) );
---------------------
作者:qin_sunshine
原文:https://blog.csdn.net/weixin_42235488/article/details/80589583
bzero和memset函数区别联系相关推荐
- bzero 和memset的区别
bzero 原型:extern void bzero(void *s, int n); 用法:#include <string.h> 功能:置字节字符串s的前n个字节为零且包括'\0'. ...
- bzero, memset ,setmem 区别
bzero 原型:extern void bzero(void *s, int n); 用法:#include <string.h> 功能:置字节字符串s的前n个字节为零. 说 ...
- bzero, memset ,setmem 区别【转】
本文转载自:http://chang6520.blog.163.com/blog/static/112665875201302843359715/ bzero 原型: extern void bze ...
- bzero()与 memset()等的区别
BZERO()等的区别 bzero 原型: extern void bzero(void *s, int n); 用法: #include <string.h> 功能:置字节字符串s ...
- memset()和bzero()的使用和区别
参考文献:<UNIX网络编程卷1:套接字联网API> 近日,项目之中需要用到网络编程的知识,因之前对该部分内容接触不多,遂拿上述文献恶补之.愕然间发现:在对socket地址结构执行清0操作 ...
- c语言 bzero,bzero, memset ,setmem 区别(示例代码)
bzero 原型: extern void bzero(void *s, int n); 用法: #include 功能:置字节字符串s的前n个字节为零. 说明:bzero无返回值. 举例: // b ...
- memset 用法 linux,bzero, memset ,setmem 区别
bzero 原型:extern void bzero(void *s, int n); 用法:#include 功能:置字节字符串s的前n个字节为零. 说明:bzero无返回值. 举例: ...
- 【note】fill函数和memset函数的区别和使用
memset函数 按照字节填充某字符 在头文件<cstring>里面 fill函数 按照单元赋值,将一个区间的元素都赋同一个值 在头文件<algorithm>里面 注意: fi ...
- 【C++】fill函数,fill与memset函数的区别
memset函数 按照字节填充某字符 在头文件<cstring>里面 fill函数 按照单元赋值,将一个区间的元素都赋同一个值 在头文件<algorithm>里面 因为mems ...
最新文章
- UCI机器学习数据集库
- Explain执行计划
- 【转】Scrum角色及其职责介绍
- webpack2+React 实例demo
- 如何判断对象是不是出轨了?
- Shell中字符串、数值的比较
- myEclipse 界面窗口打不开问题
- 收藏:PCWorld:火狐浏览器已宣告死亡
- php微信关键词回复,php微信开发之关键词回复功能
- 音频文件如何转换成文字?
- 两个栈实现一个队列以及两个队列实现一个栈(Java)
- 第23次CSP认证题解
- 谁是元宇宙的基础设施?数据中心助推元宇宙发展
- Android Camera 预览及录制视频 附demo
- Java学习决心计划书
- [USACO09OCT]谷仓里的回声Barn Echoes(hush、STL)
- linux限制指定ip禁止访问指定端口,linux设置iptables禁止某个IP访问
- Class热替换与卸载
- java中getDelta是什么意思_什么Delta编码/压缩算法库有Java?
- Linux命令英文对照表