//数组越界造成的死循环风险 int main() { int i = 0; int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; for (i = 0; i <= 12; i++) //当小于等于11时会报错,而小于等于12的时候不会, { //原因是小于等于12的时候死循环,导致没有机会报错,因为报错是在程序结束后发生的 printf("沉迷学习,无法自拔\n"); arr[i] = 0; } return 0; } 以上程序在debug版本下运行时会出现死循环的情况。原因如下: 该程序在运行时,由于i和arr都属于局部变量,故会在栈区创建,由于i在前,a...