Bonjour,

J'essaye de résoudre un problème depuis un bon moment, sans y arriver, j'aurais besoin de vos lumières car là je n'ai plus assez de recule.
Effectivement, me code se sépare en plusieurs fonctions:

Fonction principale:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
//Déclaration
struct toto *pt_toto;
[...]
//Appel de fonction
fonctionCalcul(pt_toto);
printf("pt_toto[0].nb[0] = %d\n", pt_toto[0].nb[0]);
Fonction calcul:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
int fonctionCalcul(struc toto *ptMaStructToto)
//Déclaration
struct toto *pointeur_toto;
struct toto mToto;
[...]
pointeur_toto = malloc( 50* sizeof(mToto) );
//Sauvegarde de l'addresse
ptMaStructToto = pointeur_toto;
printf("pointeur_toto[0].nb[0] = %d\n", pointeur_toto[0].nb[0]);
printf("ptMaStructToto [0].nb[0] = %d\n", ptMaStructToto [0].nb[0]);
Les 2 printf de la fonctionCalcul donne la même chose, or dans la fonction principale, je ne retrouve pas la même chose.
Est-ce que c'est mon intialisation de pointeurs de structure qui est incorrecte, ou est-ce la portée du malloc ?

Si vous avez des pistes je suis preneur.

Merci,

Bat