【发布时间】:2010-10-15 04:40:50
【问题描述】:
我正在尝试打印地址指向的值,但问题是我需要根据传递给我的大小取消引用该指针。所以类似的东西:
void print(Address addr, Int size) {
...
}
我对如何实现这一点有点困惑。有人能指出我正确的方向吗?
编辑: 好的,所以我在想:
char p[80];
memset(p, '\0', 80);
memcpy(p, addr, size);
然后解引用为 *p。如果有更好的方法或者正确的方法,请告诉我
【问题讨论】:
-
您能详细说明一下吗?您的意思是有时您想将指针取消引用为 32 位 int(例如,如果 size==4),有时作为 64 位 int(如果 size ==8)?还是你追求别的?
-
@Michael:没错。我正在尝试打印这些数字的十六进制表示。
标签: c pointers dereference