Salve ragazzi, mi potete aiutare a risolvere questo esercizio sui processi in c++ dandomi anche una spiegazione su come ci siete riusciti, mi fareste un grande favore grazie.
Considerando il seguente codice:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv){
int i=2, j=0;
if (argc<=1) return -2;
j=strlen(argv[1]);
for( ; i<strlen(argv[0]; i++){
int pid=fork();
if(!pid){
printf("%d\t%c\n", getpid(), argv[1][j-1]);
i+=2;
}
else{
wait();
}
}
return i;
}
Determinare l'output del programma, invocato con la seguente linea di comando:
./a.out <776494>
Bonus: dire quale warnig viene emesso dal compilatore durante l'esecuzione di:
gcc ./processi2.c
e come modificare il codice per evitarlo.