I have a header file list.h and a source file list.c,which define the functions in list.h. I have a struct here:
typedef struct ListNode{
struct ListNode* next;
struct ListNode* prev;
void *value;
}Node;
typedef struct List{
Node *first;
Node *last;
int count;
}List;
How can i make them only visible to the functions in list.h,when the compiler does not accept using static and typedef together? These are the functions i declare in list.h:
List *List_create();
void List_destroy(List *list);
void *List_remove(List *list,Node *node);