什么是野指针?

1.首先我们应该了解什么是指针?指针是编程语言中的一个对象,利用地址,它的值直接指向存在电脑存储器中另一个地方的值。可以通过地址找到所需的变量单元,可以说,地址指向改变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。

2.指针的正确格式是什么?形如:int a=10;int *p=&a;这个意思就是先将10赋值给a,存在了电脑的存储器中,然后定义指针*p=&a,是表示指针p指向了a的地址。另外指针一定要初始话。这个就是指针的正确用法。

3.什么是野指针?野指针通俗的讲就是格式不规范,有问题的指针。按书上的说就是指针指向的位置是不可知的

4.野指针的成因:

1.指针未初始化。p会默认为随机值。

例如:int main()

{

int *p;

*p=20;

return 0;
}

这个如果打印,结果是随机的。

2.指针越界访问。

当指针的指向超出数组的范围时,就导致了野指针

例如:

int a[ 10];int *p=a[ ];*p=a[11]

11超出了数组范围就会导致指针没有指向,就会变成野指针。

3.指针指向的空间释放。

这作者自己也没弄懂,知道的可以和作者说一下

——————————————————————————————作者是萌新,谢谢支持!

作者:小海

期待下次能更加好!


 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白兜白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值