c++ - 为什么 cout<<main;打印 1?

标签 c++

为什么 cout<<main;打印1在我的电脑上?我以为它会打印 main 的地址。但是当我使用 printf("%x",main);我得到不同的输出。

编辑:

我试过了 std::cout用于其他功能。我得到 1对于每种情况。

最佳答案

这只不过是未定义的行为。这是一个行为不可预测的代码示例。

关于c++ - 为什么 cout<<main;打印 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17620241/

相关文章:

C++:std::chrono 或 boost::chrono

c++ - 非多态继承对性能/内存使用有影响吗?

c++ - 哪些有效的 C++ 项目可以通过 C++11 更好地实现?如何?

c++ - 将 C++ 从 VS2003 迁移到 VS2005 需要更改哪些代码?

c++ - libstdc++ 中允许不兼容的函数类型?

c++ - 移动立方体、体素,需要一些建议

java - Java 和 C++ 对象的低延迟分布式缓存

c++ - 函数参数不是左值?

c++ - 为什么不允许在 const 非 volatile 成员函数上消除公共(public)子表达式?

c++ - 关于命名空间的问题