【发布时间】:2011-01-23 02:17:47
【问题描述】:
毕竟,这两个语句都做同样的事情......
int a = 10;
int *b = &a;
printf("%p\n",b);
printf("%08X\n",b);
例如(使用不同的地址):
0012FEE0
0012FEE0
使用%x 按需要格式化指针很简单,那么%p 选项有什么好的用途吗?
【问题讨论】:
-
通过使用 '%p' 打印相关变量的地址,“void * 指针参数以十六进制打印(就像通过 %#x 或 %#lx 一样)。”跨度>
-
在 C++ 中,您可以使用 (void *) 类型转换:参见 stackoverflow.com/questions/5657123/…