Bonjour,

Je dois déterminer approximativement les adresses limites du segment stack dans la mémoire virtuelle d'un processus. Voici ce que j'ai tenté de faire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
char *debut = alloca(1); // allocation d'un octet sur le stack
char *fin = debut;
 
while (alloca(1) != NULL) // on répète tant qu'il reste de l'espace
fin--; // le segment stack grossit vers le bas alors on décrémente
 
printf("Début du stack: %p", debut);
printf("Fin du stack: %p", fin);
Malheureusement, j'obtiens toujours une "segmentation fault", comme si je dépassais les limites... Des idées?

Merci à l'avance pour votre aide !