我可以在C99中这样做吗?
typedef struct dlNode {
dlNode* next, prev;
void* datum;
} dlNode;
const static dlNode head={
.next = &tail,
.prev = NULL,
.datum = NULL
};
const static dlNode tail={
.next = NULL,
.prev = &head,
.datum = NULL
};
没有这个我可以使我的程序正常工作。只是方便。 最佳答案
你可以。您只需要转发声明tail
即可使其工作:
typedef struct dlNode {
struct dlNode* next;
struct dlNode* prev;
void* datum;
} dlNode;
const static dlNode tail;
const static dlNode head={
.next = &tail,
.prev = NULL,
.datum = NULL
};
const static dlNode tail={
.next = NULL,
.prev = &head,
.datum = NULL
};
关于c - 我可以使用常量结构进行循环引用吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46289498/