错误 - 参数类型无效(错误的位置在我初始化队列的main函数中。) 我声明了一个Queue结构,它有两个指向另一个结构(称为Dataitem)。
// list dataitem declaration
struct dataitem{
Cake cake;
struct dataitem *next;
};
typedef struct dataitem Dataitem;
typedef Dataitem *DataitemPtr;
// Queue declaration
struct queue{
int countQ;
Dataitem *headPtr;
Dataitem * tailPtr;
};
typedef struct queue Queue;
我正在初始化main函数中的Queue,如下所示。这里发现错误。我能否知道为什么会出现这个错误?
Queue q;
q->headPtr=q->tailPtr = NULL;
q.countQ=0;
答案 0 :(得分:1)
您使用的语法错误。使用.
代替->
。
q.headPtr = q.tailPtr = NULL;
要访问对象的成员,您需要使用.
运算符。 headPtr
是指针的事实并不意味着您需要使用->
运算符来访问q
的成员。您需要使用->
运算符来访问q.headPtr
的成员。
q.headPtr->next = NULL;