Так что я пытаюсь построить B-Tree, используя два типа узлов, отдельные узлы ключей (kNode) и суперузел, содержащий число kNodes на основе размера заказа (sibNode). Проблема, с которой я сталкиваюсь, заключается в том, что для этой настройки для работы мне нужны указатели kNode в sibNode (например, pkey и smallestPnt), а также указатели sibNode в kNode (например, nxtkey и child). Какой бы тип typedef я не помещал сначала, но возвращает тип неизвестного типа для этих указателей (пример в этом порядке возвращает: error: неизвестное имя типа 'kNode'). Если бы кто-нибудь мог дать мне несколько советов о том, как избежать этой ошибки, которая была бы оценена.C typedef confliction
typedef int keyT;
//B-Tree Node typdef
typedef struct
{
int size;
int cursor;
kNode* pkey;
kNode* smallestPnt;
}sibNode;
//key Node typedef
typedef struct
{
keyT* key;
sibNode* nxtkey;
sibNode* child;
}kNode;
+1, и стоит отметить, независимый вперед Децл 'STRUCT KNode;' является необязательным. Это приведет к изменению двух элементов в 'struct kNode *' и правильной маркировке предполагаемой структуры. – WhozCraig