Members prevNodeand nextNodehave an incomplete type, you should write it as follows:
typedef struct Node_struct
{
int number;
struct Node_struct *nextNode;
struct Node_struct *prevNode;
} Node;
or
typedef struct Node_struct Node;
struct Node_struct
{
int number;
Node *nextNode;
Node *prevNode;
};
The reason is that you can declare a poniter an incomplete type, but if you try to dereference a pointer, for example, when you use an operator ->, then the type must be known, because the size of this type is necessary.
source
share