C中的队列结构。通过取消指向该结构的指针来访问结构中的指针

时间:2016-10-17 21:27:19

标签: c queue pointer-to-pointer

1.  struct node {
2.      char data;
3.      struct node* nxtPtr;
4.  }
5. 
6.  typedef struct node Node;
7.
8.  Node* front = NULL;
9.  Node* end = NULL;
10.
11. void enqueue(char userData)
12. {
13.     Node* temp = malloc(sizeof(Node));
14.     temp->data = userData;
15.     temp->nxtPtr = ???
16. }

我将代码保持在最低限度,以避免混淆。最终,变量end将指向包含数据元素和Node指针元素的Node结构。在第15行,我想取消引用end以从当前端节点访问存储在nxtPtr中的值。但是以下一行

temp->nxtPtr = *end->nxtPtr;

给出以下gcc错误

  incompatible types when assigning to type ‘struct node *’ from type ‘struct node’

1 个答案:

答案 0 :(得分:1)

A->B表示“B指向struct的{​​{1}}字段,因此您不需要A