以下部分代码未编译:
struct Node {
int data;
struct Node *next;
}
struct Node head;
head->next = NULL;
错误消息说: 错误:在' - >'之前预期'=',',',';','asm'或'attrivute'代币 head-> next = NUL;
答案 0 :(得分:1)
由于head是结构而不是指针,您可以使用.
访问元素:
head.next = NULL;
答案 1 :(得分:1)
头部不是指针。使用'。':
head.next = NULL;
答案 2 :(得分:1)
结构定义后错误不是分号:
struct Node {
int data;
struct Node *next;
} ; /* <==== here */
答案 3 :(得分:0)
除此之外,您应该使用点来访问成员,似乎您将可执行代码放在声明部分中。 head.next = NULL;
必须在函数内。
答案 4 :(得分:0)
您应该使用.
而不是->
,并且要小心文件范围,您的可执行代码应该在函数内。
尝试:
#include<stdio.h>
struct Node {
int data;
struct Node *next;
}; //Remember the ;
int main(){
struct Node head;
head.next = NULL;
//...
return 0;
}
或者:
#include<stdio.h>
struct Node {
int data;
struct Node *next;
}; //Remember the ;
struct Node head;
int main(){
head.next = NULL;
//...
return 0;
}