【发布时间】:2010-11-06 13:23:19
【问题描述】:
我想做一些看起来相当简单的事情。我得到了结果,但问题是,我无法知道结果是否正确。
我正在使用 C 语言,我有两个指针;我想打印指针的内容。我不想取消引用指针来获取指向的值,我只想要指针存储的地址。
我写了以下代码,我需要知道的是它是否正确,如果不正确,我该如何纠正它。
/* item one is a parameter and it comes in as: const void* item1 */
const Emp* emp1 = (const Emp*) item1;
printf("\n comp1-> emp1 = %p; item1 = %p \n", emp1, item1 );
虽然我发布这个(以及它正确的原因很重要)是我最终需要为一个指向指针的指针执行此操作。那就是:
const Emp** emp1 = (const Emp**) item1;
【问题讨论】:
-
你写的是对的,你到底遇到了什么问题?
-
正如我所描述的,我得到了结果,但无法知道结果是否正确,或者它是否给了我垃圾。 Don 和下面的其他人(以及您自己)确认这些结果是有效的。
标签: c pointers memory-address