我不知道如何解决这个错误。我不能分配相同的类型。不断收到'(严格)不兼容的指针 ='

#define POOLSZ 53
typedef struct{
     int eventnr;
     int eventfq;
     struct olnode *next;
}olnode;

olnode pool[POOLSZ];
olnode *avail

void initpool()
{
    int i;

    for(i = 0; i < POOLSZ-1; i++)
        pool[i].next = &pool[i+1]; /*This is the error line */
    pool[i].next = NULL;
    avail = pool;
}

最佳答案

这一行指向 struct olnode :

struct olnode *next;

但是你没有定义这样的结构。您只有一个匿名结构, typedef 编辑为 olnode

使固定:
typedef struct olnode {...} olnode;

关于c - = 中的不兼容指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48673609/

10-11 18:58