|
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
static int flag;
int
main(void)
{
int i;
flag=5;
for(i=0;i<5;i++){
if(fork()==0){
flag--;
printf("flag=%d\n",flag);
exit(0);
}
}
exit(0);
}
编译,运行结果如下:
#./a.out
#flag=4
flag=4
flag=4
flag=4
flag=4
请问输出的flag的值为什么不是4,3,2,1,0呢? |
|