how〜fork()函數調用是不同的然後簡單的fork().. 我試過了下面的代碼..在這個連小孩都給執行代碼父節。fork()和〜fork()之間有什麼區別
main()
{
pid_t pid = ~fork();
int a = 2;
int *ptr = (int*)malloc(sizeof(int));
*ptr = 2;
if(pid == 0)
{
a = a + 3;
*ptr = *ptr + 2;
printf("value at a and ptr in child process : %d and %d\n" , a , *ptr);
printf("address a and ptr in child process : %p and %p\n" , &a , ptr);
}
else
{
printf("value at a and ptr in parent process : %d and %d\n" , a , *ptr);
printf("address a and ptr in parent process : %p and %p\n" , &a , ptr);
}
}
返回值的位'〜'是不是運營商。這裏的代碼沒有任何意義。 – nhahtdh
你從哪裏得到了使用'〜fork()'或者有一個名爲'〜fork'的獨立函數的想法? –
有人在OP上玩弄詭計,看起來他爲此而墮落。 (但是,正確的答案是'〜fork'的返回值應該與'〜0'比較,這是一個專門用於測試'〜fork'返回值的內置常量。) –