J'essaie de plonger un peu dans la programmation C. J'essaye donc de créer un tableau 2-d en utilisant des doubles pointeurs et en l'initialisant avec des valeurs aléatoires. Cependant, durant la phase d'accès, il jette une erreur de segmentationL'initialisation de la matrice 2-D jette segfault
est ci-dessous un extrait rayé de mon code vers le bas:
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;
}
Pourriez-vous s'il vous plaît me montrer ce que je fais mal?
http://www.geeksforgeeks.org/dynamically-allocate-2d-array-c/ – NiVeR
Ce que vous avez n'est * pas * un tableau 2D, alors essayez de ne pas l'initialiser comme un seul. –
BTW, https://stackoverflow.com/questions/605845/do-i-cast-the-result-of-malloc?rq=1 – Jens