Comment un fil de la fonction accès aux variables de la mère thread

J'ai lu que les threads partagent l'espace d'adressage de mémoire de celle du parent fil.
Si cela est vrai , pourquoi pas une fonction de thread accéder à une variable locale appartenant à celle du parent fil ?

void* PrintVar(void* arg){
   printf( "%d\n", a);
}

int main(int argc, char*argv[]) {
   int a;
   a = 10;
   pthread_t thr;
   pthread_create( &thr, NULL, PrintVar, NULL );

}

Si le thread des actions de l'espace d'adressage , alors la fonction PrintVar doit avoir été en mesure d'imprimer la valeur de variable a , droit ?

J'ai lu ce morceau de l'info sur http://www.yolinux.com/TUTORIALS/LinuxTutorialPosixThreads.html

Threads du même processus partagent:
Instructions concernant le processus d'
La plupart des données
ouvrir des fichiers (descripteurs)
les signaux et les gestionnaires de signaux
répertoire de travail courant
L'utilisateur et id de groupe

Si cela est vrai, alors pourquoi ne int a pas considérée comme une variable partagée ?

J'aimerais voir un exemple de code où les descripteurs de fichiers sont partagés

OriginalL'auteur Sharat Chandra | 2010-10-17