Un pointeur est rien d'autre qu'une variable. La seule différence avec une variable classique est qu'une variable normal contient un nombre quelqconque, alors qu'un pointeur contient un nombre qui correspond exactement à l'adresse d'une autre variable dans la mémoire. Habituellement, l'adresse d'une variable (classqiue ou pointeur) est affiché en héxadécimal par les fonctions standards du langage C, mais si ont convertit cette adresse en décimal, on obtient un nombre! (voir code ci-dessous)
Dans la représentation ci-dessous de la mémoire d'un ordinateur, on constate que la valeur contenu dans le pointeur pointeurDefense correspond exactement à l'adresse de la variable defense.