我希望這個方案從0打印1〜5,但只打印一個迭代循環。但是,如果我註釋掉父級的for循環,則會打印出預期的結果......會導致這種情況的原因是什麼?爲空叉導致怪異的行爲
int main(){
int pid;
int i=0;
for(i=0;i<5;i++){
printf("i: %d\n",i);
pid = fork();
if(pid < 0){
printf("Error forking\n");
} else if(pid == 0){
//child
for(i=0;i<10;i++);
exit(1);
} else {
//parent
for(i=0;i<10;i++);
//exit(1);
}
}
}
'爲(I = 0; I <5; i ++在){'要更改i。在子迴路。也許發明另一個變量名? – wildplasser