我想在 C 中制作一个结构列表。在我的程序中,我从文件中读取行并将信息存储在结构中(每行一个结构)。所以我的代码是这样的:
struct myStruct *myStructList;
// Here is the parsing thing
而且,在解析结束时,我尝试这样做:
myStructList[i] = NULL;
其中 i 是列表中的下一个空闲位置(已使用 realloc 保留)。
这是我得到的错误。
incompatible types when assigning to type ‘struct myStruct’ from type ‘void *’
看来我不能做 NULL 的事情。我的问题是:如果它不为 NULL,我能放什么?我怎么知道列表已经完成?我知道我可以用列表中的元素数量来保持计数器,但我想避免这种情况。