Où est - `%p` utile avec printf?

Après tout, ces deux déclarations de faire la même chose...

int a = 10;
int *b = &a;
printf("%p\n",b);
printf("%08X\n",b);

Par exemple (avec des adresses différentes):

0012FEE0
0012FEE0

Il est trivial de format le pointeur comme vous le souhaitez, avec %x, donc est-il un bon usage de la %p option?

  • En utilisant '%p' vous imprimer l'adresse de la variable en question, "Le pointeur void * argument est imprimé en hexadécimal (comme par %#x ou %#lx)."
  • En C++, vous pouvez utiliser (void *) transtypage: voir stackoverflow.com/questions/5657123/...
InformationsquelleAutor Moeb | 2010-03-03