Page 1 sur 1

[R] Pointeurs ~ comment utiliser la fonction Ptr() ?

Posté : ven. 03 avr. 2009 23:04
par orax
Je n'arrive pas à comprendre comment utiliser Ptr(). Il n'y a aucun exemple dans l'aide et je n'arrive pas à en trouver un. Si j'ai bien compris, cette fonction doit me retourner un pointeur qui va pointer sur mon expression. J'ai juste ?
J'ai essayé de faire ça :

Code : Tout sélectionner

        Global $A="blabla"
        
        $var=Ptr($A)
        MsgBox(0,"",$var) ; $var = 0x00000000
j'ai cru comprendre que ça me retournait l'adresse du pointeur, sauf que c'est égal à 0...

J'ai dû mal faire ou mal comprendre quelque chose. Je me demande si cette fonction peut vraiment être utilisée comme ça. Est-il possible de créer des pointeurs avec Ptr() ou est-ce que Ptr() sert à autre chose ?

Re: [..] Pointeurs ~ comment utiliser la fonction Ptr() ?

Posté : ven. 03 avr. 2009 23:42
par Tlem
Je n'ai pas la connaissance suffisante pour vous parler des pointeurs en programmation.
Par contre ce qui est sur, c'est que vous ne faite pas une bonne utilisation de la commande Ptr().

http://fr.wikipedia.org/wiki/Pointeur_(programmation)

Re: [..] Pointeurs ~ comment utiliser la fonction Ptr() ?

Posté : sam. 04 avr. 2009 00:36
par orax
Je viens de me rendre compte que Ptr() ne fait pas du tout ce que je pensais.
Visiblement, c'est simplement une fonction qui convertie une chaine en pointeur tout comme Hwnd() pour convertir une chaine (du style 0x15478987) en handle. Je m'attendais à ce que Ptr($A) me retourne l'adresse mémoire de la variable $A. Mais si j'ai bien compris c'est à moi de spécifier l'adresse vers laquelle le pointeur va pointer, par exemple Ptr(0x15424654). Ce qui explique pourquoi ça me retournait 0x00000000, je lui donnait la valeur de ma variable au lieu de lui donner une adresse mémoire.