【C++】空指针和野指针

文章目录


1.空指针

概念:指针变量指向内存中编号为0的空间。

用途:初始化指针变量。

注意:空指针指向的内存是不可以访问的。

示例:

cpp 复制代码
int main(){
	//指针变量p指向内存地址编号为0的空间
	int *P=NULL;
	//访问空指针会报错
	//内存编号0~255是系统占用的内存,没有权限访问
	cout<<*p<<endl;
	return 0;
}

2.野指针

概念:指针变量指向非法的内存空间。

示例:

cpp 复制代码
int main(){
	//指针变量p指向内存地址编号为0x1100的空间
	int *p=(int *)0x1100;
	
	//访问野指针会报错
	cout<<*p<<endl;
	return 0;	
}

总结

综上,空指针和野指针都不是我们申请的空间,因此我们不要访问,写代码时更要避免野指针。

相关推荐
铅笔侠_小龙虾9 小时前
Rust 学习目录
开发语言·学习·rust
Darkwanderor9 小时前
对Linux的进程控制的研究
linux·运维·c++
云泽80810 小时前
从零吃透 C++ 异常:抛出捕获、栈展开、异常重抛与编码规范详解
开发语言·c++·代码规范
灯澜忆梦10 小时前
GO---可见性规则
开发语言·golang
REDcker10 小时前
libdatachannel 快速入门
c++·webrtc·datachannel
逝水无殇10 小时前
C# 文件的输入与输出详解
开发语言·数据库·后端·c#
这是个栗子11 小时前
前端开发中的常用工具函数(八)
开发语言·前端·javascript
凤凰院凶涛QAQ11 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”
java·开发语言·数据结构
研☆香11 小时前
为什么变量声明在赋值前也能使用?—— 深入理解 JavaScript 变量提升与作用域
开发语言·前端·javascript
右耳朵猫AI11 小时前
PHP周刊2026W28 | 安全更新、Laravel 13.18、Twig 3.28
开发语言·php·laravel