【问题标题】:To "head" or NOT to "head"?“头”还是不“头”?
【发布时间】:2010-09-01 13:37:38
【问题描述】:

我有一个不断增加的“指针”,我最终需要返回指针的“头”。我在使用“pointer [0]”或使用另一个名为“head”的变量并将其初始化并在最后返回时处于两难境地。我觉得前者使代码看起来很脏,后来消耗的内存很少。有什么干净的建议吗?

【问题讨论】:

  • 也许您应该显示您的代码以使问题更清楚。
  • 使用临时变量并通过引用存储地址。请在上面添加更多详细信息。
  • 伪码 char *string, *temp;临时=字符串;处理字符串{字符串++....}返回(字符串[0])?或返回温度?哪个更好?
  • 如果你在做string++,你会发现string[0]temp一样。

标签: c pointers data-structures


【解决方案1】:

你总是需要两个变量:

Foo *head = getSomeList();
Foo *tail = head;
while (tail->isValid())
  ++tail;
// You have head and tail here

因为tail[0] != head(除非列表为空),您无法真正实现它。

显示代码并告诉我们您尝试实现的具体目标可能会带来更好的答案。

【讨论】:

    猜你喜欢
    • 2012-04-05
    • 2011-01-13
    • 2012-06-15
    • 2011-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-20
    相关资源
    最近更新 更多