读书人

为何打印函数地址总是输出1

发布时间: 2013-09-05 16:02:06 作者: rapoo

为什么打印函数地址总是输出1
#include <iostream>


void s() {
}

void s2() {
}

int main() {
std::cout << &s << std::endl;
std::cout << &s2 << std::endl;
}

在g++(mac上)输出两次1
[解决办法]
因为std::cout 没有 对函数指针进行重载吧,
所以被转换成 bool型了

你可以指定 相应的强转类型

std::cout <<(void*)&s << std::endl;

读书人网 >C++

热点推荐