没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
15页
□ C语言之父丹尼斯·里奇曾说过:“C语言诡异离奇,陷阱重重,却获得了巨大成功!”这句话一方面体现了C语言的灵活性以及广泛的使用,另一方面也体现了C语言的复杂性。在使用C/C++遇到的所有陷阱和问题中,和指针相关的占了绝大部分。 □ C/C++是灵活度和自由度较大的编程语言,指针更是让程序员可以越过安全的栅栏,对某些内存区域进行破坏性访问,从而引发安全风险和严重问题。 □ C/C++的指针是一把双刃剑,为我们带来灵活性的同时,也带来了各种各样的问题(使用不当的话)。有人曾统计过,C/C++程序员处理的所有bug中,有一半是由指针引起的bug。可想而知,指针中包含的陷阱是多么可怕。 □ 要想在编写代码的时候尽可能避免指针带来的各种陷阱和问题,就需要知道不恰当地使用指针到底会引发哪些问题, 为什么会引发这些问题,以及如何去解决这些问题。 1、使用空指针 2、使用指向随机内容的指针 3、使用野指针 4、不恰当的指针声明 5、访问指针越界或溢出 6、内存泄露
资源推荐
资源详情
资源评论
软件开发培训之指针使用注意事项
□ C语言之父丹尼斯·里奇曾说过:“C语言诡异离奇,陷阱重重,却获得了巨大成功!”这句话一方面体
现了C语言的灵活性以及广泛的使用,另一方面也体现了C语言的复杂性。在使用C/C++遇到的所有陷阱和问
题中,和指针相关的占了绝大部分。
□ C/C++是灵活度和自由度较大的编程语言,指针更是让程序员可以越过安全的栅栏,对某些内存区域
进行破坏性访问,从而引发安全风险和严重问题。
□ C/C++的指针是一把双刃剑,为我们带来灵活性的同时,也带来了各种各样的问题(使用不当的话
)。有人曾统计过,C/C++程序员处理的所有bug中,有一半是由指针引起的bug。可想而知,指针中包含的
陷阱是多么可怕。
□ 要想在编写代码的时候尽可能避免指针带来的各种陷阱和问题,就需要知道不恰当地使用指针到底会
引发哪些问题, 为什么会引发这些问题,以及如何去解决这些问题。
1、使用空指针 2、使用指向随机内容的指针 3、使用野指针
4、不恰当的指针声明 5、访问指针越界或溢出 6、内存泄露
7、指针的算数运算 8、指针与数组
简介
1、使用空指针
使用malloc或new分配内存未成功,却使用了它;函数的参数中有指针类型的参数,直接使用了它。解
决办法是:使用之前先检查指针是否为NULL(对于Windows上内存比较充裕的情况,分配小块内存可考虑用
断言assert;在嵌入式设备上,则需要统一进行使用前检查)。
2、使用指向随机内容的指针
使用malloc或new分配内存成功,但还未初始化指针指向的内容时,却使用了它。内存分配后,其初始
内容是不确定的、随机的,可能是全零,也可能是其他值,故需要我们显式地为其赋初始值(一般使用
memset)。否则,使用不正确的值,可能会造成其他地方的逻辑错误,甚至导致程序崩溃。
3、使用野指针
(1)指针未初始化就使用。
int *p;
*p = 100;
注意事项
剩余14页未读,继续阅读
资源评论
希望_睿智
- 粉丝: 2w+
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 20240420-扬州高中小学部风雨操场转换层条件图r.dwg
- 小猫咪邮件在线发送系统源码v1.1,支持添加附件
- 永磁电机铜耗估算表-Excel-v1.0
- 参考资料-人工智能对劳动力市场的影响机制研究.pdf
- 协同供应链集成产品介绍V71sp1.rar
- 上市公司-人工智能的采纳程度面板数据(2003-2021年).xlsx
- 参考资料-人工智能技术应用对就业的影响及作用机制研究-来自制造业企业的微观证据.pdf
- 第5章spring-mvc请求映射处理
- 2023-04-06-项目笔记 - 第一百十六阶段 - 4.4.2.114全局变量的作用域-114 -2024.04.27
- 协同供应链集成产品介绍V70.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功