一段测试代码
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main()
{
pid_t pid;
int nNum = 0;
printf("Pid : [%d] \n", getpid());
pid = fork();
if(0 == pid)
{
nNum = 10;
printf("Pid : [%d] Child Address = %p nNum = %d \n",
getpid(), &nNum, nNum);
}
else
{
sleep(1);
printf("Pid : [%d] Father Address = %p nNum = %d \n",
getpid(), &nNum, nNum);
}
return 0;
}
这里有一个疑惑 为什么他们两个的地址相同呢?