从 C++ 过渡,我现在正在学习 C 的黑暗艺术,并开发了以下代码来代替我对模板的需求。在底部的示例中,我已经实现了您的普通节点结构,它可以用于存储任何数据类型。考虑以下...
// vptr.c
#include <stdio.h>
struct Node
{
void* data;
struct Node* next;
};
int main()
{
struct Node n0, n1;
n0.next = &n1;
n0.data = malloc(sizeof(int));
*((int*) n0.data) = 3;
printf("%d\n", *((int*) n0.data));
return 0;
}
同样,问题在于此代码的无警告编译——即使用 gcc 编译器,尽管我的 Windows 版 wxDevCpp 也给了我一些警告,但对它不那么挑剔。我把它归咎于 GUI。
任何帮助将不胜感激。