【发布时间】:2015-01-07 07:15:37
【问题描述】:
我目前完成了反转链表的功能,但是当我返回一个指向新链表头部的指针时,我收到了错误,因为我将它错误地存储在我的主链表中。有人可以向我解释存储和打印新链接列表的正确语法吗?
typedef struct Node {
int val;
struct Node * next;
}LL_t;
LL_t reverse(LL_t* ls) // passing me a head
{
\\ my code
return ls; // pretty sure this is how I return the new head node
}
int main() {
\\ my code
LL_t *p = reverse(head); // not working, giving me these weird incompatible errors.
for ( i = 0; i < 9; i++ )
{
printf( "*(p + %d) : %d\n", i, *(p + i));
}
return 0;
}
这是我更改变量指针 p 并尝试打印它后的最后一个错误
int *p; p = 反向(头部)
错误;
main.c:42:6: 警告:来自不兼容指针类型的赋值 [默认启用] p = 反向(头部);
编辑2:
我尝试了这种方法,但对我不起作用:
for (p->val != NULL)
{
printf("%d\n", p->val);
p->val = p->next;
}
【问题讨论】:
-
您能告诉我们错误是什么吗?还有
head来自哪里? -
让我截图。
-
是的,抱歉我无法上传,说图片太大,
-
复制粘贴。不要截图。
-
"我收到错误" 如果您认为它们相关,请显示它们。如果您认为它们不是,请不要提及它们。 “让我截图”。别。使用文本。您的编译器输出文本,而不是图片。
标签: c linked-list