关于野指针

在调用函数过程中,系统为int型变量a分配内存并存储值10,函数返回a的地址。但离开函数后,该内存被释放。主程序中定义的指针接收此地址并尝试修改值时,因地址已无效,产生了野指针错误,无法找到a的内容。
摘要由CSDN通过智能技术生成

 当我们在执行上述程序时,会发现报错。

通过主程序调用函数时,系统为int型变量a开辟一块空间,空间里保存变量的值10,函数返回值为变量a的地址。但是当离开函数时,系统会释放空间。所以在主程序定义int型的指针变量接受函数的返回值a的地址时,再通过*p = 20,想改变a的值时,由于访问的地址已经被系统释放了,*p已找不到a变量地址里的内容了,这个时候就会产生野指针。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值