Cours d Algorithmique-Programmation 2e partie (IAP2 ...
20 pages
Catalan

Cours d'Algorithmique-Programmation 2e partie (IAP2 ...

-

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
20 pages
Catalan
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Cours d’Algorithmique-Programmation
e2 partie (IAP2): programmation imp´erative et
structures de donn´ees simples
Pr´esentation du d´ebogueur gdb
Sandrine Blazy
er` e- 1 ann´ee
6 d´ecembre 2007
e
S.Blazy (ENSIIE) Cours d’Algorithmique-Programmation 2 partie (IAP2):6programmd´ecembreation2007imp´erat 1i/ve20et structures de donn´ees simples Mise au point de programmes
Utilisation d’un langage de haut niveau
beaucoup d’erreurs d´etect´ees par le compilateur
exceptions
Affichage de r´esultats interm´ediaires et de messages d’erreur
modification du code
Programmation d´efensive
v´erification de propri´et´es sur les variables
Utilisation d’un d´ebogueur
apprentissage d’un nouvel outil
solution efficace
e
S.Blazy (ENSIIE) Cours d’Algorithmique-Programmation 2 partie (IAP2):6programmd´ecembreation2007imp´erat 2i/ve20et structures de donn´ees simples Rˆ ole d’un d´ebogueur
Aide `a la correction d’erreurs quand on veut :
faire d´emarrer un programme en pr´ecisant des informations pouvant
affecter son comportement,
faire arrˆeter un programme dans des conditions particuli`eres,
examiner ce qui s’est pass´e quand le programme s’est arrˆet´e
modifier le programme.
e
S.Blazy (ENSIIE) Cours d’Algorithmique-Programmation 2 partie (IAP2):6programmd´ecembreation2007imp´erat 3i/ve20et structures de donn´ees simples D´ebogueur
Examine un programme durant son ex´ecution.
Exemples
quel est le r´esultat de l’ex´ecution de la ligne 26?
quelle est la valeur de telle variable?
que fait telle fonction ...

Sujets

Informations

Publié par
Nombre de lectures 98
Langue Catalan

Extrait

.SzalBou)CdrsENy(IESI-erPimuqirhtlAogepion2mmatogrannodsee´pmis6selrusturctdees0
Pre´sentationdud´ebogueur gdb
Cours d’Algorithmique-Programmation 2 e partie(IAP2):programmationimp´erativeet structuresdedonne´essimples
` - 1 ere annee ´
Sandrine Blazy
6d´ecembre2007
d´ecembre20071/2
tnedpuioarmmrpgoiseaMseISNE(yzalB.SrigoAldrsou)CIEstrPgoarmmhtimuq-eation2ep0072bre2
Utilisation d’un langage de haut niveau beaucoupderreursd´etect´eesparlecompilateur exceptions Achagedere´sultatsinterme´diairesetdemessagesderreur modification du code Programmationd´efensive ve´ricationdepropri´et´essurlesvariables Utilisationdunde´bogueur tiss e d’ l outil appren ag un nouve solution efficace
/20elpmissemece´d6sesurctru´enndode
la.BSdsruoC)EIISNE(yzsrterdscuutn´eeedonplesssimbmece´d6/37002er
fairede´marrerunprogrammeenpr´ecisantdesinformationspouvant affecter son comportement, fairearrˆeterunprogrammedansdesconditionsparticuli`eres, examinercequisestpasse´quandleprogrammesestarreˆte´ modifier le programme.
Aidea`lacorrectionderreursquandonveut:
20AglrotimhqieuP-rogrammation2epruˆoledund´ebogueR
plim6desn´onssee700202/4ece´erbmuterdsdesrtcup2eontimaamgrsdACourIIE)(ENSP-orqieutimhglro
Notion de point de programme
quelestlere´sultatdelexe´cutiondelaligne26? quelle est la valeur de telle variable ? que fait telle fonction ? quesepasse-t-ilsijimposetellevaleura`tellevariable?
De´bogueur
Exemples
Examineunprogrammedurantsonexe´cution.
lazyS.B
ugueroCeuatilmpbo´etdreorrgmaammhqieuP-AlgoritE)CoursdE(yzIISNSalB.20re5/07
lecompilateurfournitdesinformationsaud´ebogueur format commun lechoixdud´ebogueurestlie´a`celuidudebogueur ´ lede´bogueurexploiteducodenonoptimise ´
20missselpe´d6bmecresductun´eeedonsrtpe2noit
(Ezyla.BSbdentdud´ebogueurgIINSCoFEo)nscdtuirolngneAmtiroqimhP-eurgorammation2eputcurtsnodedserssimn´ee6d´epleser02ecbm02
interpr`etelescommandesdelutilisateur option de compilation -g d´e gdb e ´ utable puis run marrage : xec utilisation : placement de pointsdarreˆt statiques ou dynamiques lutilisateurcontroˆlelex´ecutionduprogramme achele´tatdelame´moire sortie : quit
70/6
p2eontimaamrgorP-euqimhtiroAlgursdE)CoNSIIyzE(B.alSespl´e6deen´imssdsernodertsutcuPointsdsteˆrra20rembce
Placementdepointsdarrˆets:commande break b ma fonction b 12 connue par la commande list l ma fonction . . . b 25 if (x != 7) continue Suppression : delete et clear delete 1 clear ma fonction , clear 12 Activation : enable et disable
207/07
euP-mhqirotiAgl2eptionammarogralB.SsdurCoE)IINS(Ezycuuterdssrtssimplesedonn´ee
ma
var
02
Points d’observation
watch
watch
== 5)
(x
re20078/6d´ecemb
)CouSIIEAlgorsd.S(yNElBzan2ioatmmepuqimhtirargorP-eoncutiex´edelrtnoeloˆC
next exe´cuteentie`rementuneinstruction step exe´cuteuneseuleinstruction finish ex´ecuteuneinstructionjusqua`sonpointdappel
0/27900e2bremesdedonnstructurel6s´dcee´seispm
Gestiondesdonne´es
Affichage de valeurs print print /x pt , print * pt display set ma var = ma val whatis ma var ptype ma var
00710/20ecembre2´d6selpmissee´nndodeesurctrust(yzalB.S)CIESIENAldrsouhtimogirrPgouq-eatiorammn2ep
struct complex {double real; double imag;} v;
lpmisseeece´d6se0720remb
Die´renceentreptypeetwhatis
(gdb) whatis v type = struct complex (gdb) ptype v type = struct complex { double real; double imag; }
0/211sdsdeno´nrtcuuterptima2eonlgorsdACourIIE)rgmaP-orqieutimhSNE(yzalB.S
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents