La vue Mémoire permet d'afficher et de modifier le contenu de la mémoire ou des zones mémoire utilisées par votre programme.
Pourquoi et quand exécuter cette tâche
Pour ajouter un moniteur mémoire à partir de la vue Variables, de la vue Moniteurs, de la vue Registres ou de l'éditeur, procédez comme suit :
- Dans la vue Variables, Moniteurs ou Registres, cliquez avec le bouton droit de la souris sur la variable, l'expression ou le registre pour lequel vous souhaitez surveiller la mémoire. Sinon, dans l'éditeur, sélectionnez l'expression dont vous souhaitez contrôler la mémoire, puis cliquez avec le bouton droit de la souris sur cette expression.
Remarque : Si l'expression est un pointeur, sa valeur sera utilisée pour adresser la mémoire. Si l'expression est de type lvalue (avec une adresse en mémoire), son adresse sera utilisée pour adresser la mémoire. Sinon,
la valeur de l'expression sera utilisée comme adresse. Par exemple, dans le cas de la déclaration int i = 0x44;, si l'expression est i, le moniteur mémoire sera à l'adresse de i. Si l'expression
est i+1, il sera à l'emplacement indiqué par
la valeur de l'expression i+1, à savoir 0x45.
- Sélectionnez Contrôler la mémoire > <rendu> dans le menu (où <rendu> représente le rendu que vous souhaitez afficher dans le cadre Rendus de la vue Mémoire.
Pour ajouter à une expression un nouveau moniteur de mémoire à partir de la vue Mémoire, procédez comme suit :
Procédure
- Dans la vue Mémoire, cliquez sur le bouton de commande Ajouter un moniteur de mémoire (
).
- Dans la boîte de dialogue Contrôler la mémoire, précisez l'expression dans la zone (elle doit être évaluée sur une adresse).
- Cliquez sur OK.
- Le cadre Moniteurs (gauche) de la vue Mémoire affiche l'expression que vous avez demandé de contrôler. Si vous disposez de plusieurs
moniteurs de mémoire, cette section affiche la liste des expressions que vous contrôlez.
- Le cadre Rendus (à droite) de la vue Mémoire réalise le rendu au format HEX et ASCII.
Résultats
Pour afficher le contenu d'une variable C ou C++ (comme un entier)
dans un moniteur de mémoire, vous n'avez pas besoin de faire précéder la variable d'une perluète (&) ou de sélectionner un pointeur désignant la variable en question. Prenons l'exemple du code source C ou C++ suivant :
int i=10; int* p=&i;
Pour contrôler la mémoire associée à la variable i, vous pouvez taper i ou p dans la boîte de dialogue
Contrôler la mémoire ou choisir l'une des valeurs dans l'éditeur et sélectionner Contrôler la mémoire > <rendu> dans le menu en incrustation.