数组下标为-1是什么意思?
数组下标为-1是什么意思?它不是越界了嘛,怎么也能得出答案?
[解决办法]
这是在欺负编译器。
编译器是机器,不是人,它的规则是事先写好的。
数组的下标a[i],实际上就变成了*(a+i)
这么说,你能明白为什么能得出结果了吧。
当然了,程序这么写,搞学术、考试没问题,实际写程序最好不要这么写
[解决办法]
有个sum(&a[2]),函数调用的时候a已经是数组的第三个元素了,在此基础上+1 -1都在数组范围之内。
如果直接在a上-1,那样就会超出数组范围,就是个未定义的行为。若真想知道答案,可以自己单步调试,查看内存里面放的到底是什么东西。
[解决办法]
[解决办法]
欺负人的玩意。你是知道-1的地方有合理的数据才这么写的。平时要是这地方没有合理的数据,可能你就崩溃了