我可能知道为什么我会从输出中获得类似地址的内容。 谁能告诉我如何将其输出为值? 我是指针的新手并且要做链表。
struct node{
int x;
node *next;
};
int main(){
node *root;
root = new node;
root->next = 0;
root->x = 5;
cout << root << endl;
return 0;
}
答案 0 :(得分:4)
好吧,如果你真的想,你可以重载operator<<
来输出节点类/结构的值,我目前不在编译器附近,但我认为它会像这样:
inline std::ostream& operator<< (std::ostream& os, const node* myNode)
{
os << myNode->x;
return os;
}
//用法:
std::cout << root << std::endl;
虽然如果你只想以最简单的方式获得价值,你可以随时使用 操作符 - &GT;如下图所示:
std::cout << root->x << std::endl;
答案 1 :(得分:3)
与为x
指定值相同cout << root->x << endl;
答案 2 :(得分:0)
您还可以访问x
的值:
cout<<(*root).x<<endl;