Я новичок в "fork ()", я везде читал, что когда вызывается fork (), запускается точная копия текущего (вызывающего) процесса. Теперь, когда я запускаю следующий код, должно быть два разных процесса,с двумя разными ячейками памяти, назначенными их переменным и функциям.
#include<stdio.h>
int i=10;
int pid;
int main(){
if((pid=fork())==0){
i++;//somewhere I read that separate memory space for child is created when write is needed
printf("parent address= %p\n",&i);// this should return the address from parent's memory space
}else{
i++;
i++;
printf("child address= %p\n",&i);// this should return the address of child's memory space
}
wait(0);
return(0);
}
Why The output looks like::
child address::804a01c
parent address::804a01c
Почему оба адреса одинаковы для родительского и дочернего?