memset 导致的一个段错误
2024-09-04 12:04:56
原型:
void *memset(void *s, int c, size_t n);
解释:
memset :是 逐字节 拷贝,即n是指整个变量所占字节,在用于数组时一定要注意n不一定是 数组元素.
memset :用来给某一块内存空间进行赋值的.
段错误之处:
对于所赋值的变量,如果不定义,如何来空间,随机空间??? 所以memset所用对象必须先定义.
eg: 错误用法
B *b ;
memset(b,0,sizeof(B));
如果未定义,尽管memset成功执行,但是会将后面的其它变量给置NULL了,导致:段错误
正确用法:
B *b = new B;
memset(b,0,sizeof(B));在b所指的空间地址处进行赋值
最新文章
- MySQL 基础语句的练习
- Python开发【第十六篇】:AJAX全套
- iOS Xcode 调试技巧 全局断点这样加才有意思
- Seletion Sort
- org.hibernate.QueryException: could not resolve property: address of:
- git学习资料包
- Tea HDU - 5881
- openstack的最简单安装
- array_diff()
- 痞子衡嵌入式:如果你正在量产i.MX RT产品,不妨试试这款神器RT-Flash
- Uiautomator之入门
- Echarts饼图显示模板
- Jmeter参数化HTTP request中Send Files With The Request的文件路径和文件名
- nginx 学习笔记(4) Connection处理方法
- 洛谷P1501 [国家集训队]Tree II(LCT)
- Python--re模块的findall等用法
- Postman的安装
- P3366 (模板)最小生成树
- Directive Controller And Link Timing In AngularJS
- 加注解时插入权限切面@EnableDataSecurity