Imprimer la valeur d'un pointeur

Messages postés
123
Date d'inscription
jeudi 10 janvier 2002
Statut
Membre
Dernière intervention
7 août 2018
- - Dernière réponse : f0xi
Messages postés
4307
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
- 14 févr. 2013 à 18:16
Bonjour,
A des fins de débogage, je souhaite imprimer la valeur de pointeurs dans un fichier afin de déterminer celui qui pose problème.
Comment fait-on pour transtyper la valeur d'un pointeur en une chaîne imprimable?
Afficher la suite 

6 réponses

Messages postés
308
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
17 septembre 2013
1
0
Merci
bonjour,

regarde la fonction Format. Je crois que %x donne l'adresse d'un pointeur.

Luc.
Commenter la réponse de beckerich
Messages postés
429
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
6 mai 2019
16
0
Merci
Salut,

Exact, Format le fait, mais c'est '%p'.
Commenter la réponse de korgis
Messages postés
4307
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
26
0
Merci
Exact, c'est %p !

on peut donc faire ceci :
procedure TForm1.Button1Click(Sender: TObject);
begin
  showMessage(
    format('ptr [%p] = 0x%.8x = %d',[pointer(sender), longword(pointer(sender)), integer(pointer(sender))])
  );
end;


qui affichera :

"ptr [0180EF40] = 0x0180EF40 = 25227072"

________________________________________________________
besoin de câbles audio, vidèo, informatique pas cher ?
Commenter la réponse de f0xi
Messages postés
308
Date d'inscription
jeudi 29 septembre 2005
Statut
Membre
Dernière intervention
17 septembre 2013
1
0
Merci
bonjour,

ah oui,
%x affiche en hexadécimal

Luc.
Commenter la réponse de beckerich
Messages postés
123
Date d'inscription
jeudi 10 janvier 2002
Statut
Membre
Dernière intervention
7 août 2018
0
Merci
Merci:
Je pense que c'est la solution que je cherchais!
Je ne connaissais pas la fonction format et c'est donc la première fois que je l'utilise!
C'est marrant cela me rappelle le fortran IV que
j'ai découvert à la fin des années 60..
et que j'avais appris sur le tas comme j'ai fait pour Delphi!
Commenter la réponse de cs_Gerard
Messages postés
4307
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
26
0
Merci
si tu veux en savoir plus :

http://deefaze.ftp-developpez.com/delphi/tutoriels/delphi-la-fonction-format.pdf

________________________________________________________
besoin de câbles audio, vidèo, informatique pas cher ?
Commenter la réponse de f0xi