21xrx.com
2024-12-23 01:26:24 Monday
登录
文章检索 我的文章 写文章
如何在C++中打印函数指针地址
2023-06-28 20:11:27 深夜i     --     --
C++ 函数指针 地址 打印

在C++中,函数指针作为一种数据类型,被广泛应用于各种场景中。如果需要打印一个函数指针的地址,可以使用以下代码。

 C++

#include <iostream>

void foo()

  // do something

int main()

{

  void (*pFoo)() = &foo;

  std::cout << "Function pointer address: " << pFoo << std::endl;

  return 0;

}

在上述代码中,定义了一个函数指针pFoo,它指向函数foo。使用取地址运算符&,可以获取函数foo的地址,并将其赋值给pFoo。

接着,使用std::cout流输出pFoo的值即可打印出函数指针的地址。注意,函数指针是一个地址,因此在输出时不需要使用引用符&。

此外,也可以使用printf函数输出函数指针地址的十六进制表示,示例如下。

 C++

#include <cstdio>

void foo()

{

  // do something

}

int main()

{

  void (*pFoo)() = &foo;

  printf("Function pointer address: %p\n", pFoo);

  return 0;

}

在此示例中,使用了printf函数的格式化输出功能,其中%p是输出地址的格式控制符。需要注意的是,使用printf输出函数指针地址时,需要将函数指针转换为void*类型。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复