What is the output of the following program
#include<stdio.h>
main()
{
int i=0;
fork();
printf("%d",i++);
fork();
printf("%d",i++);
fork();
wait();
}
Answers were Sorted based on User's Feedback
Answer / raghu
totally 8 processes...so each process will print 0 & 1
output: 0101010101010101
Is This Answer Correct ? | 6 Yes | 1 No |
Answer / sourisengupta
finally we will get 001111.
for the first fork() two 0 will be printed and for secoond
forkk four 1 will be printed.
Is This Answer Correct ? | 4 Yes | 3 No |
Answer / srikanth
print order cannot be predicted.Total 8 process(including
main) first process prints 0,1
the first child prints 0,1 and the other 2 child/grand child
process print 1's (two 1s). The other four child/grand child
process wont print anything (created after printf)
Is This Answer Correct ? | 1 Yes | 0 No |
Answer / vignesh1988i
for first printf it will print 0, for second printf it will
print 1.. and finally i will have a value 2.
Is This Answer Correct ? | 5 Yes | 5 No |
What is the difference between procedural and functional programming?
What is the use of void pointer and null pointer in c language?
Write a program using two-dimensional array that lists the odd numbers and even numbers separately in a 12 input values.
When should the const modifier be used?
What is the purpose of 'register' keyword?
write a programe returns the number of times the character appears in the string
how to print "hai" in c?
What are 3 types of structures?
#define MAX(x,y) (x) >(y)?(x):(y) main() { inti=10,j=5,k=0; k= MAX(i++,++j); printf("%d..%d..%d",i,j,k); }
How can I use a preprocessorif expression to ?
write a prgram of swapping with 2 valiables
What is the difference between typeof(foo) and myFoo.GetType()?