【问题标题】:Return Void Pointer and Convert Hex to UINT返回 Void 指针并将十六进制转换为 UINT
【发布时间】:2015-04-30 21:50:37
【问题描述】:

我一直在努力解决这个问题,但我们将不胜感激。 我有这个功能-

 void * func1(void * a)
 {
  return (void *)0x123;
 }

现在,当我检索值时,我会在 1E4 等中得到一些随机数。这是我要检索的代码 -

void * check = func1;
printf(1,"%x\n", (uint)check);

我确实了解 Void 指针,但这是我无法理解的事情。我要打印“0x123”

【问题讨论】:

  • 已编辑。之前打错了。谢谢你让我知道。

标签: c pointers void


【解决方案1】:

你必须调用这个函数:

void *check = func1(0);

打开你的编译器警告!

【讨论】:

  • 谢谢。这行得通。但是,我为什么要调用它。我很抱歉,我认为它是函数指针。非常感谢。
  • 您之前的代码确实打印出一个函数指针。你说那不是你想要的。
  • 是的。有两种不同的价值观即将到来。一个带有函数指针,另一个带有返回。我对返回值感到困惑。感谢您的帮助。
猜你喜欢
  • 2015-03-22
  • 2020-03-28
  • 2015-09-17
  • 2018-11-07
  • 2021-11-04
  • 2018-12-06
  • 1970-01-01
  • 2021-12-17
相关资源
最近更新 更多