如何解决如何在 C++ 中使用 cout 打印函数的地址?
我无法理解如何在 C++ 中打印函数的地址: 我的简单代码如下:
#include<iostream>
int my_fun () {
return 5 ;
}
int main () {
int (*fp)() = my_fun ;
std::cout << &fp <<std::endl ;
std::cout<<my_fun<<std::endl ;
printf("%p\n",my_fun) ;
std::cout<<(int*)my_fun<<std::endl ;
}
但我不明白为什么
std::cout<<my_fun<<std::endl ;
给我数字 1 而 (int*)my_fun 给我正确的地址。 对不起,如果问题是微不足道的。
这是程序的输出:
0x7fffed0713b0
1
0x7ff14f7ca209
0x7ff14f7ca209
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。