Bonjour, après mon malloc j'ai une erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
main.c 226 : malloc() failed
Voici mon code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
double ** Particles=malloc(nbprocs*sizeof(*Particles));
if(Particles==NULL)
{
  MEMERROR;
  MPI_Finalize();
  exit(EXIT_FAILURE);
}
 
if(rank<restp1)
  {
    firstpart[rank] = (rank-1)*nbparp1;
    lastpart[rank]  = nbparp1*rank-1;  
  }
  else /* rank >= restp1 */
  {
    firstpart[rank] = nbpar*(rank-1)+rest;
    lastpart[rank]  = nbpar*rank+restm1; 
  }
  sizeParticles[rank]=neq*(lastpart[rank]-firstpart[rank]+1); /* ici  sizeParticles[rank]==780 ou 806 suivant la valeur de rank */
 
 
  for(i=1;i<nbprocs;++i)  /* nbprocs == 26 */
  {
    Particles[i]=malloc(sizeParticles[i]*sizeof(*Particles[i]));
    if(Particles[i]==NULL)
    {
      printf("i = %d\n",i);  /* echec quand i == 14 */
      MEMERROR;
      MPI_Finalize();
      exit(EXIT_FAILURE);
    }
  } /* end for(i=1;i<nbprocs;++i) */
Merci.