野指针

news/2025/9/27 17:15:03/文章来源:https://www.cnblogs.com/zxhoo/p/19115331

野指针

Posted on 2025-09-27 17:10  steve.z  阅读(0)  评论(0)    收藏  举报

野指针(Wild Pointer)是指向未知或无效内存地址的指针,是C/C++编程中常见的一种错误类型。

野指针的几种情况:

1. 未初始化的指针

int *p;  // p指向随机地址,是野指针
*p = 10; // 危险!可能访问任意内存位置

2. 释放内存后未置空的指针

int *p = malloc(sizeof(int));
free(p);   // 释放内存
// p仍然指向原地址,但该地址已无效
*p = 10;   // 野指针访问,未定义行为

3. 指向已销毁对象的指针

int* func() {int local = 42;return &local;  // 返回局部变量地址
}
// 函数结束后,local被销毁,返回的指针成为野指针

野指针的危害:

  • 程序崩溃:访问非法内存地址
  • 数据损坏:意外修改其他变量的值
  • 安全漏洞:可能被恶意利用
  • 调试困难:错误位置随机,难以重现

预防措施:

  1. 初始化指针
int *p = NULL;  // 或 int *p = nullptr; (C++)
  1. 释放后置空
free(p);
p = NULL;
  1. 检查指针有效性
if (p != NULL) {*p = 10;
}
  1. 使用智能指针(C++)
std::unique_ptr<int> p = std::make_unique<int>(42);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919723.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win11安装ensp

安装包 1. eNSP+V100R003C00SPC100+Setup:https://www.alipan.com/s/mWWEg4rpsnj(严格) 2.VirtualBox-5.2.44-139111-Win:https://www.alipan.com/s/qJZBMJs3U9H(严格) 3.Wireshark-4.4.5-x64:https://www.alip…

自己湿热内蕴出汗痒和岳母生病2天不洗澡发痒的不同-完美解释小孩为啥没那么容易痒

先解释小孩为啥没那么容易痒,是因为他的身体比较平衡、既没有我的"湿热内蕴”, 也没有岳母的 "年老卫气渐虚",所以既没看到过他出汗后抓痒,也没看到、听到他说有两天没洗澡就身上发痒-虽然他自己常…

无刷电机驱动工程及PID算法FOC算法完成(超高质量超高质量

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

vue: ubuntu安装vue环境

一,官网: https://nodejs.org/en/download 二,安装: # Download and install nvm: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash # in lieu of restarting the shell \. "…

golang实现ai聊天窗口

在Go语言中实现AI聊天窗口需要结合前端界面、后端服务以及AI模型调用。以下是一个分步实现的详细方案,包含关键代码示例和架构设计: 一、整体架构设计前端:使用HTML/CSS/JavaScript构建Web界面,通过WebSocket与后端…

源码反码补码

源码的每一位按位取反得到反码,反码是补码加一,反码解决的是正负零的问题。这让正零和负零是一个数,使得0统一

图的分类法:解耦数据和图表类型

HKUST 25 Fall COMP 6411D Data Visualization 课堂笔记可视化的可视化 当我第一眼看到 slide 中“chart taxonomies” ,我有两个反应:图表数量也太多了 这个分类方式并不是很直观,Comparsion / Relationship / Di…

完整教程:图解人工智能中的高等数学(python实现)---一元函数微分学

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

怎么建设网站临汾做公关用的网站

http://{ip}:{port}/refresh 说明&#xff1a;springBoot版本是1.5.9&#xff0c;接口路径与2.x&#xff0c;不同 路径区别&#xff1a;/refresh VS /actuator/refresh 用postman调用refresh接口刷新git配置&#xff0c;报错如下&#xff0c;没有权限 在服务本地启动&#…

提供信息门户网站搭建wap网站源码下载

笔者是ctf小白&#xff0c;这两天也是遇到.git泄露的题目&#xff0c;需要工具来解决问题&#xff0c;在下载和使用的过程中也是遇到很多问题&#xff0c;写此篇记录经验&#xff0c;以供学习 在本篇标题三中有详细介绍了Linux系统添加环境变量的操作教程&#xff0c;以供学习 …

35Bourbaki1-1@《数学原理》1-1@20250927

35Bourbaki1-1@《数学原理》1-1@20250927

IDEA 2024的零卡死配置

IDEA 2024的零卡死配置用了苹果container跑Linux之后,IDEA 2024 用着用着就卡死,这是苹果 Silicon M1 Max专属JDK 8 的零卡死配置。 JDK版本配置 IDEA 2024在默认情况下 Project 的 Language level 会从JDK22开始的,…

Python + MediaPipe 手势绘画高级应用:从基础到创意交互 - 实践

Python + MediaPipe 手势绘画高级应用:从基础到创意交互 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "C…

有建设网站的软件吗吉林市最新消息今天

这是连续剧般的文章&#xff0c;请关注&#xff0c;持续更新中... 系列文章: http://t.csdnimg.cn/Os83Qhttp://t.csdnimg.cn/Os83Q这篇文章将我们的reactro转变成http服务器... HTTP HTTP介绍 HTTP是一个基于TCP通信协议的基础上的应用层协议。接下来我们需要解析HTTP请求消息…

网站怎么做百度认证做照片有那些网站好

这篇文章主要介绍了opencv python图像梯度实例详解,文中通过示例代码介绍的非常详细&#xff0c;对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下一阶导数与Soble算子二阶导数与拉普拉斯算子图像边缘&#xff1a;Soble算子&#xff1a;二阶导数&#xff1a;拉…

天津智能网站建设制作桓台网站建设

转自&#xff1a;进阶 JavaScript 必知的 33 个点【进阶必备】 进阶 JavaScript 必知的 33 个点【进阶必备】 Original 前端小菜鸡之菜鸡互啄 前端开发爱好者 2022-04-11 08:32 收录于话题#javaScript进阶1个 点击下方“前端开发爱好者”&#xff0c;选择“设为星标” 第一…

Crypto 2021 s Accepted papers

转载自:https://crypto.iacr.org/2021/acceptedpapers.phpAccepted Papers 接收论文These papers are listed in order of submission.这些论文按提交顺序排列。White Box Traitor Tracing白盒背叛追踪 Mark Zhand…

详细介绍:【数据结构】哈希表(Hash Table)详解

详细介绍:【数据结构】哈希表(Hash Table)详解2025-09-27 16:57 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; displa…

Github 12.3kstar, 3分钟起步做中后台?Go+Vue 脚手架,把权限、代码生成、RBAC 都封装好了

嗨,我是小华同学,专注解锁高效工作与前沿AI工具!每日精选开源技术、实战技巧,助你省时50%、领先他人一步。👉免费订阅,与10万+技术人共享升级秘籍!go-admin 是一个基于 Gin + Vue 的前后端分离权限管理脚手架,…