在C++中输出对象在内存中的地址的方法是,把指向它的指针/引用转换为相应的相应的void*类型,然后得到的就是它在内存中的地址了。
#include<bits/stdc++.h>
using namespace std;
int main()
{
const char* const word = "again";
//输出char*的内容
cout<<word<<endl;
//输出char*在内存中的地址
cout<<static_cast<const void*>(word)<<endl;
string s = "xc";
cout<<s<<endl;
cout<<static_cast<void*>(&s)<<endl;
cout<<static_cast<const void*>(&s)<<endl;
}
注意,const类型的对象只能转换为const void*,而非const的对象可以转换为const void*,也可以转换为void*.
转载请注明来源:https://www.longjin666.top/?p=909
欢迎关注我的公众号“灯珑”,让我们一起了解更多的事物~