Obtenir la taille du pointeur en C

Comment puis-je obtenir la taille d'un pointeur en C à l'aide sizeof? Je veux malloc de la mémoire pour stocker un pointeur (pas la valeur d'être souligné).

Autant que je sache, le pointeur de différents types ne sont pas la garantie d'avoir la même taille.
Vraiment? Pouvez-vous fournir un exemple de source? J'ai toujours supposé que tous les pointeurs ont la même taille, car ils sont tous en se référant à des emplacements de mémoire dans le même espace d'adressage.
Un contre-exemple trivial est un pointeur de fonction; ce n'est pas nécessairement le même espace d'adressage. Voir aussi: stackoverflow.com/questions/916051/....
C Standard mandats que des pointeurs vers des objets sont tous de la même taille, mais n'impose pas de pointeurs de fonctions sont de la même taille que des pointeurs vers des objets (rappelez-vous 80286 et petit, moyen, grand, énorme modèles de mémoire, etc). POSIX mandats que les pointeurs de fonctions sont de la même taille que des pointeurs vers des objets.
Avez-vous une norme spécifique citation dans l'esprit des "pointeurs vers des objets sont tous de la même taille"?

OriginalL'auteur Matt | 2012-03-18