Si je declare dans un programme:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
typedef struct 
{
	int **matriceF;
	int *info;
	int *coding;
	int *MC;
}bloc;
et que j'alloue la memoire de chacun des pointeurs dans une fonction
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
void compute_bloc (int *info, int j ,int *tailles)
{
	int i,longueur_bloc;
	bloc bc;
 
	longueur_bloc = (int) tailles[0]/tailles[3];
	//initialisation bc.info
	bc.info = malloc (sizeof(int) * longueur_bloc);
	if (bc.info == NULL) printf("probleme lors de l'allocation de bc.info\n");
	for (i=0;i<longueur_bloc;i++)
	{
		bc.info[i] = info[tailles[3]*i + j];
	}
 
 
bc.matriceF = malloc (sizeof( int *) * longueur); 
if(bc.matriceF==NULL) 
  { 
  // Gestion de l'erreur 
  } 
for (i=0;i<longueur;i++) 
{ 
bc.matriceF[i] =  malloc (sizeof( int ) * largeur); 
if(bc.matriceF[i]==NULL) 
  { 
  // Gestion de l'erreur 
  } 
}
est ce que une fois revenu dans le programme principal je peux lire
par exemple bc.matriceF[k]
sans risque que les donnees ont ete effacées????