c语言学习【15】-指针常见问题

野指针

这样编译的话编译器一般不报错

我们编程主要是跟内存打交道

这个p存储的是一个垃圾值(因为没有初始化),则我们不知道这个值如果作为地址的话指向的哪个地址,所以也就不知道那个地址中存储的值是什么,属于谁,然后强行对这个不属于自己控制的内存进行操作(对这个空间强行赋值),如果这个内存单元属于别的软件或者系统的话,就可能导致软件崩溃或者系统崩溃。

如果我们定义了一个野指针 p,这个指针p 是系统分配给编译器的内存空间,所以编译器有权利去访问p空间的数值,但是不能对p所指向的内存单元进行操作,因为这个内存单元不属于能够编辑的单元。就像是在酒店的房间,你虽然知道门牌号,但是你没有订这个房间,所以没有进入这个房间的权利。

dont touch neighbours garden !!!

  • 数据类型不匹配

发布了20 篇原创文章 · 获赞 1 · 访问量 354

猜你喜欢

转载自blog.csdn.net/qq_41505080/article/details/104200623