帮助显示内容列表C ++链接列表!

时间:2011-02-26 15:48:05

标签: c++

void display()


  {  

     list *newlist;

     newlist = first;

     cout << endl;

     do
      {
       if (newlist == NULL)
       cout << "List is empty" << endl;
       else
       {
          cout << "Name is: " << newlist->name << " ";
          cout << "Age is: " << newlist->age << " ";
          cout << "Height is: " << newlist->height;
          if (newlist==current)
          cout<<" <-- Current position ";
          cout<< endl;
          newlist = newlist->next;
       }
      }
    while(newlist!=NULL);
    cout << "End of List" << endl;
  }

我在这里帮助纠正了我的整个代码,关于我喜欢这个网站的当前初始化! 只是这一个问题 我想仅在当前节点上显示Cursor。 但是这段代码甚至没有显示“&lt; - 当前位置”。 当我删除“if(newlist == current)”时 所有节点都出现“&lt; - current position”。 所以我有点困惑,我应该把它放在哪里...... 我还必须在其他节点之间插入一个节点。 有人可以向我展示如何在我移动电流或电流指向的任何地方显示“当前位置”的代码吗?

2 个答案:

答案 0 :(得分:1)

该代码应该可以正常工作,如果确实current指向列表中的一个节点。

你应该能够通过ineserting找到类似的东西:

cout << newlist << " " << current << endl;

之前:

newlist = newlist->next;

答案 1 :(得分:0)

Mahis,在您之前的帖子中,我更正了您的源代码。请阅读我提供的代码中的注释。这将回答你的问题。请参阅here

您可能已将当前初始化为NULL,但在添加元素时,还需要将current设置为正确的值。例如,当您在链接列表中插入第一个值时,current = first。现在的问题是你将newlist与NULL进行比较,它永远不会评估为true。所以它永远不会打印你当前的位置。