我有一个名为 course 的结构,每个课程都有多个节点(另一个结构“节点”)。
它具有的节点数各不相同,但我从一个文件中获得了该数字,我从中读取此信息,因此该数字位于一个变量中。
所以我需要一个 malloc 在结构内。但我很困惑。我知道你可以在结构中包含数组,但我不知道将创建 malloc 数组的代码放在哪里,因为我的结构在我的头文件中。这是我目前的代码。我意识到它看起来不对,我只是不知道如何修复它以及在哪里初始化 malloc 数组。
struct course {
char identifier[2];
int num_nodes;
struct node *nodes;
nodes = (struct nodes*)malloc(num_nodes*sizeof(struct node));
};
struct node {
int number;
char type[2];
};
我希望能够做类似的事情:
struct node a_node;
struct course a_course;
a_course.nodes[0] = a_node;
ETC...
我用的C不多,这是我第一次尝试在C中使用动态数组。我的经验都来自Java,当然Java并没有真正像C一样使用指针,所以这就是全部对我来说有点困惑。
所以一些帮助将不胜感激,非常感谢:)