此处fn print_list()
中存在错误,其中编译器显示以下错误
error: expected ';', ',' or ')' before '=' token
请帮忙,因为我是新手。
我认为这不是语法错误,我无法根据我的期望识别代码中的问题它应该正常工作。请告诉我函数print_list中的问题是什么,或者在调用相同函数时是否有任何问题。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct node
{
int value;
struct node *next;
}mynode;
void add(mynode **, int);
void print_list(mynode *);
main()
{
mynode *head=NULL;
add(&head, 10);
add(&head, 100);
add(&head, 1000);
print_list(head);
}
void add(mynode **head_1, int value)
{
mynode *temp=NULL;
mynode ** head = head_1;
temp = malloc(sizeof(mynode));
temp->value = value;
temp->next = NULL;
if (*head == NULL)
{
*head = temp;
}
else
{
while(*head!=NULL)
{
*head = (*head)->next;
}
*head = temp;
}
return;
}
void print_list(mynode *head)
(
mynode *temp = head;
while(temp != NULL)
{
temp=temp->next;
printf("%d \t", temp->value);
}
)
答案 0 :(得分:8)
使用{
代替(
。
void print_list(mynode *head)
{
mynode *temp = head;
while(temp != NULL)
{
temp=temp->next;
printf("%d \t", temp->value);
}
}
答案 1 :(得分:4)
您使用了错误的大括号
void print_list(mynode *head)
( //error should be {
mynode *temp = head;
while(temp != NULL)
{
temp=temp->next;
printf("%d \t", temp->value);
}
)//error should be }
答案 2 :(得分:2)
您必须将{
用于函数体而不是'('