前言 局部变量通过栈内存保存CPU到达内存中找一块空闲地址划分成栈内存,比如数组下标访问越界的时候,实际上是对栈内存的下一个变量操作,所以这样无形之中就会修改到自己不想修改的其他变量的值,导致出错,所以像数组越界是十分危险的!关于修改到之前的变量还是修改到之后的变量 这跟栈内存的增长方式有关:满递增堆栈,空递增堆栈,满递减堆栈,空递减堆栈。 测试程序 结果:利用断点debug发现C变量的值改变! #include <stdio> int main() { int A = 1; int B[5]