Langage C - Travaux Dirigés n° 3

IUP Mathématiques-Informatique


Exercice n° 1 (Examen de la pile d'exécution)

Récupérer sur la page WEB le source du programme fibonacci.c et compiler le en utilisant l'option -g de gcc. Avec cette option, gcc ajoute dans le code objet des infomations de debugging.

Le programme peut alors être exécuté sous contrôle en utilisant le débogueur gdb. Pour cela, taper dans Emacs Alt-x gdb, <return>, puis le nom du programme exécutable, ici fibonacci. Dans la fenêtre (gdb) d'Emacs, on dispose alors des commandes suivantes pour contrôler l'exécution le programme.

Ces commandes sont aussi accessibles par les menus. Il existe beaucoup d'autres commandes disponibles. Pour en savoir plus, utiliser la commande help. Placer un point d'arrêt sur la première ligne de la fonction fibo et lancer l'exécution du programme. Le programme s'arrête au premier passage dans la fonction fibo. Examiner le contenu de la pile puis relancer le programme. Examiner à nouveau la pile puis relancer à nouveau. Recommencer jusqu'à a terminaison du programme.

Exercice n° 2

Quel est le nombre d'appels récursifs que provoque l'appel à la fonction fibo avec un entier n. Expérimenter en utilisant une variable globale puis expliquer.