occ*_*lum 9 c assert pointers void
我正在学习C并在C中尝试粗略实现链表.长话短说我有一个只包含一个void指针(元素)的结构和另一个指向下一个节点的指针.(代码要遵循)我的问题是,当通过时头节点和其他一些节点成新函数,有没有办法确保两个元素属于同一类型?两个节点应该能够保存任何类型的数据.我已经尝试与sizeof()进行比较,但我无法顺从void指针.提前致谢!
struct Node{
void* element;
struct Node* next;
}
Run Code Online (Sandbox Code Playgroud)
这是节点的代码,我只需要一种方法将它们与assert进行比较,以确保链接列表具有所有相同的元素类型!谢谢!
不 - 你通常想要避免像这样的设计,但是如果你真的无法避免它,你通常需要在节点中放置一个枚举来告诉你它包含的数据类型.