Bonjour à tous !

J'ai du mal à comprendre pourquoi ce code ne renvoie pas un segmentation fault. La variable val ne devrait-elle pas plus exister au moment de l'appel dans le main puisqu'elle est locale à la fonction mainBis ?

Merci pour vos réponses.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <stdlib.h>
 
int * inglo;
 
void fonctionBidon(int * in){
	inglo = in;
}
 
void mainBis(void){
	int val = 7;
	fonctionBidon(&val);
}
 
int main (void){
 
	mainBis();
	printf("%d",*inglo);
	return 0;
}