Runtime Error可能產生的原因
阿新 • • 發佈:2019-02-14
runtime error (執行時錯誤)就是程式執行到一半,程式就崩潰了。
比如說:
①除以零
②陣列越界:int a[3]; a[10000000]=10;
③指標越界:int * p; p=(int *)malloc(5 * sizeof(int)); *(p+1000000)=10;
④使用已經釋放的空間:int * p; p=(int *)malloc(5 * sizeof(int));free(p); *p=10;
⑤陣列開得太大,超出了棧的範圍,造成棧溢位:int a[100000000];一般來說,在
oj上做題都把陣列設成全域性變數,減少5出現的可能。
有的時候再出現這樣的錯誤還會給提示 Runtime Error(ARRAY_BOUNDS_EXCEEDED) // array bounds exceed 陣列越界 Runtime Error(DIVIDE_BY_ZERO) //divisor is nil 除零 Runtime Error(ACCESS_VIOLATION) //illegal memory access 非法記憶體讀取 Runtime Error(STACK_OVERFLOW) //stack overflow 系統棧過載
這樣可以照著上面查詢錯誤。
轉載自 https://blog.csdn.net/dreambyday/article/details/54880616