链表如何输出,是想数组一样吗

链表怎么输出呀,可以写成数组一样,p加中括号(p[])这样输出吗,还是只能用地址p.data然后再指向,下一个地址输出?

链表只能一个节点一个节点的访问喔,代码如下:

while(p!=null){
  cout<<p.data<<" ";
  p=p.next;
}

可以写成数组形式输出。
就相当于你实现一个list的类,然后你重载下标运算符,就可以写成数组一样了

如果使用STL的list的话,是不支持随机访问,可以使用fornot和back方法访问list的第一个元素和最后一个元素。也可以使用迭代器iterator对链表进行遍历。

    list<int> a;
    for (int i = 1; i <= 5; i++)
        a.push_back(i);
    cout << a.front() << endl;
    cout << a.back() << endl;
    list<int>::iterator iter;
    for (iter = a.begin(); iter != a.end(); iter++)
        cout << (*iter) << endl;

但如果是使用数组模拟链表的话,就依然可以使用[]进行遍历