Duda Uso del Fork

Javier
25 de Noviembre del 2009
Hola a todos, estoy empezando con c sobre linux, en la creaci贸n de procesos mediante la funci贸n fork(). Pero tengo una duda con un c贸digo que me parece de lo m谩s simple, a ver si alguien me la puede resolver. El c贸digo es el siguiente:

#include <sys/types.h>
#include <stdio.h>

main(){
pid_t pid;

pid = fork();
printf("%d ",pid); /* ----> Imprime el 0 */
switch(pid){
case -1:
perror("fork");
break;
case 0:
printf("Proceso %d; padre = %d ", getpid(),getppid()); /* ----> imprime los identificadores*/
break;
}
}

Y la duda es que me gustar铆a saber por que imprime al final "7475". Se que es el identificador del proceso, pero es que no hay ninguna parte del c贸digo en la que le digo que lo imprimar en pantalla... o me equivoco??
Esto es lo que me saca por pantalla:

0
Proceso 7475; padre = 7474
7475

Gracias por la ayuda y un saludo.

stoker22
25 de Noviembre del 2009
S铆 le dices que lo imprima en pantalla, d贸nde pones printf("Proceso %d; padre = %d", getpid(),getppid());
Con el getpid coges el identificador del proceso hijo
Con el getppid coges el identificador del proceso padre