Programme --> TUBES (pipe)
Bonjour,
Je voudrais que vous m'aidez a ecrire:
1) un programme permettant de transferer le contenu d’un tableau d’entiers d’un pere vers un fils en
utilisant un tube. Le fils affichera le contenu du tableau reçu.
2) Modifier le programme precedent pour que le fils inverse l’ordre du tableau et le retourne au pere qui
l’affichera.
voila mon code:
Code:
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
|
in main()
{
int fils;
int p[2];
int i;
int T[5] = {0, 1, 2, 3, 4};
int buf[5];
pipe (&p[0]);
if((fils = fork())==0)
{
close(p[1]);
read(p[0], buf, 5*sizeof(int));
for(i=0; i<5; i++)
{
printf("%i", buf[i]);
}
close(p[0]);
exit(0);
}
else
{
close(p[0]);
write(p[1],T, 5*sizeof(int));
wait(NULL);
close(p[1]);
exit(0);
} |
Je vous remercie en avancce.
Cordialemant:)
Programme --> TUBES (pipe)
Je te remercie mais j'ai pas compris :
la valeure tu tableau c'est toujours 2 (c'est par ce que on a une entree et une sortie?)
2) est ce que tu as une idée sur la 2 question ( modification du programme pour que le fils inverse l'ordre du tableau et le retourne au père qui l'affichera?)
3) Nous considerons cette fois-ci deux fils. Le premier d'entre eux cree un tableau et le transfert au deuxiemefills.
Celui-ci l'affiche, en inverse l'ordre et le retourne a l'autre fills. Quelles modifcations doit-on apporter au programme precedent ?
Cordialement