如何避免野指针?
来源:互联网 发布:面朝大海春暖花开 知乎 编辑:程序博客网 时间:2024/05/03 04:51
何为野指针?野指针就是,没有被初始化的指针,会由系统默认一个随机地址的指针。如果不小心使用的野指针,易造成内存泄漏的段错误。给我们的程序造成一定的破坏。
那么,我们该如何避免野指针呢?
首先,我们该养成一些良好的编程习惯。
1、当指针没有指向的地址空间是,初始化为空。这样可以引起程序员调试时的注意程度。
2、当往指针指向的空间赋值时,一定要检查是否有给这个指针分配空间。如果没有,就用malloc函数进行分配空间。
如:char *ptr = (char *) malloc (sizeof(char) * 100);
malloc函数返回的是分配的空间的地址。
3、malloc 分配空间后,一定要进行检查 指针是否为空。
如:
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
4、对空间进行清空,“清扫”掉一些垃圾数据。
如:memset( ptr, '\0', sizeof(char) *100;
5、空间使用完了还要还给系统,所以我们要进行释放内存空间。
如:free (ptr);
6、 最后一步,将刚刚使用的指针置空。
如:ptr= NULL;
0 0
- 如何避免野指针
- 如何避免野指针
- 如何避免野指针
- 如何避免野指针
- 如何避免野指针?
- 野指针如何避免
- 如何避免野指针
- 如何避免野指针?
- 如何避免“野指针”
- 如何避免野指针?
- 如何避免野指针
- 如何做到避免野指针
- 什么是野指针,如何避免?
- 什么是野指针?如何避免野指针?
- 什么是野指针 如何避免野指针
- 什么是野指针如何避免野指针
- C中的野指针—如何避免
- C语言如何中避免野指针
- 分布式文件存储数据库--MongoDB
- iar for arm 第一课
- 函数依赖
- JAVA使用Socket实现的简易HTTP服务器
- zookeeper集群环境搭建
- 如何避免野指针?
- c#使用access的那些坑
- 51nod1743 JZOJ4899【NOIP2016提高A组集训第17场11.16】雪之国度
- Codeforces Round #379 (Div. 2)题解
- 使用Octave音频处理(二):基本数学信号处理
- Python实战计划学习作业1-4
- redis如何分配哈希槽
- 5个Linux 服务器发行版你值得拥有
- 数组相关