1. 程式人生 > >C錯誤:runtime error,返回區域性變數或臨時變數的指標

C錯誤:runtime error,返回區域性變數或臨時變數的指標

在codeforce上runtime error
在這裡插入圖片描述
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=10;
⑤陣列開得太大,超出了棧的範圍,造成棧溢位:int a[100000000];

仔細思考是:返回區域性變數或臨時變數的指標
我是把函式裡的一個區域性陣列名作為指標返回了,應該先建一個全域性陣列,返回的時候返回全域性陣列名就好了