Déboguer avec CLion
Cliquez sur les images pour les voir en détail.
- Ouvrir
minimal.c dans l'éditeur. Cliquer dans la marge gauche à côté de l'appel à hw_surface_get_channel_indices pour placer un point d'arrêt (breakpoint). Un point rouge apparaît.
- Exécutez le programme en mode debug (bouton de l'insecte) en vérifiant que la configuration active affiche "Debug".
- Le programme s'exécute et s'arrête sur le breakpoint. La fenêtre du debugger s'affiche avec la pile d'appel à gauche, les variables à droite, et les boutons d'exécutions :
* Run to cursor (poursuit l'exécution jusqu'à la position du curseur),
* Step out (poursuit l'exécution jusqu'à sortir de la fonction courante),
* Step into (poursuit l'exécution d'une ligne et entre dans la fonction si c'est un appel de fonction),
* Step over (poursuit l'exécution d'une ligne sans entrer dans la fonction si c'est un appel de fonction),
* Re-run (arrête et relance l'exécution du programme),
* Continue (poursuit l'exécution jusqu'au prochain point d'arrêt),
* Stop (arrête l'exécution).
Le tableau red est initialisé avec toutes ses valeurs à 255, les variables ir, ig, ib, et ia ne sont pas initialisées et peuvent avoir n'importe quelle valeur.
- Cliquez sur "Step over" pour effectuer l'appel à
hw_surface_get_channel_indices. Les variables ir, ig, ib, et ia ont maintenant les valeurs qui définissent l'ordre des canaux sur la machine. Par example ir=2, ig=1, ib=0, et ia=3 pour des pixels BRGA.
- Cliquez sur "Step over" 2 fois pour exécuter les 2 lignes suivantes. Le tableau
red représente maintenant un pixel rouge. Par exemple {0, 0, 255, 255} pour des pixels BGRA.