C++指针与数组使用

img


在求最小值的时候,不是已经将指针往下减为什么不可以不能得出结果,只能重新定义一个指针。一维数组的地址不是连着的,不太理解为什么不可以p--操作

img

第二个for循环时,p已经指向数组元素之后的内存地址了,导致第一个*p是个垃圾值。需要先将p减去1,指向数组最后一个元素

第二个for之前,p已经超出数组范围,而且*p的值就是显示的那个负值,后面的if都不成立,没有进行p--运算。在第二个for之前先执行一次p--

不是不可以p--
问题是你的p在上次循环结束后,已经到了越界的位置
就好比你的变量i循环结束后已经变成5了
你直接用i去访问数组也会越界
你应该先--再访问