如果指向数组的指针,超出了数组的范围,再对其取值得到的是一个随机数值吗?

来源:百度知道 编辑:UC知道 时间:2024/06/07 20:15:40
C语言,如果指向数组的指针,超出了数组的范围,再对其取值(*)得到的是一个随机数值吗?

不是随机的,但是可以说是不可预料的。它一般而言是指向栈区中的废弃内存单元(没有被系统回收的内存)所存放的数据。还有,我们编写的C语言其实是运行在保护模式下的,所以你不要担心会整坏操作系统,因为有那样的错误,马上就会编译出来,或者运行时强制终止。但是一般我建议你不要做这种操作,因为C语言的编译标准不统一,难保特殊情况下不出现错误。

一般是随机数,不过也有可能指向系统内存出现错误。

随机的,是不可预料的,他可能指向内存空白的用户存储区,也可能指向已经存放指令或数据的有用内存段,这就会破坏了程序,甚至破坏了系统,会造成严重的后果