salut tous le monde j'ai trois gros problemes . commencons par le premier :
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
34
35
36
37
 
// ensemble d'include par ici
int nbrVoiture[]={0,0,0,0} // un tableau de4 entiers initialisés a 0;
 
main()
{
 
// bla bla bla 
 
for (i = 0 ; i < 10 ; i++)
     {
 
       if ((id = fork()) == -1)
         {
           printf("fork processus principale\n");
           exit(0);
         }
       else
         {
           if (id == 0)
           {
            uneMethode();
           }
            exit(0); 
         }
}
 
void uneMethode()
{
int j;
for(j=0;j<4;j++)
    nbrVoiture[j]++;
 
for(j=0;j<4;j++)
    printf("la voiture numero %d devient %d\n",j,nbrVoiture[j]);
}
}
le probleme dans ce code est que nbrVoiture[j]++ n'a un effet que sur l'appel local en effet uneMethode() ne m'affiche que des 1 pour chaque appel .
Normalement nbrVoiture est une variable globale et les modifications doivent restées a la fin de uneMethode()

J' ai essayé aussi de passer par adreese nbrVoiture mais c'a na pas marché


[Modéré par Ludovc fernàndez]
Veuillez respecter les règles du forum SVP : Ajout du tag TITRE