我正試圖潛入一點C編程。所以我試圖用雙指針創建一個二維數組並用隨機值初始化它。在訪問階段但是它拋出一個分段錯誤C 2-d數組初始化拋出段錯誤
下面是我的代碼條紋下來片段:
int main(void){
// Memory allocation for arrays
int size = 3;
double **matrix = (double **)malloc(sizeof(double *)*size*size);
int i, k;
for(i=0; i<size; i++){
for(k=0; k<size; k++){
matrix[i][k] = ((double)rand())/1314.7;
}
}
return 0;
}
可否請你指出我什麼我做錯了嗎?
http://www.geeksforgeeks.org/dynamically-allocate-2d-array-c/ – NiVeR
你有什麼是*不是一個2D數組,所以請不要像一個初始化它。 –
順便說一句,https://stackoverflow.com/questions/605845/do-i-cast-the-result-of-malloc?rq=1 – Jens