我正在尝试在 C 中设计一个数据结构,我可以将多个数组存储在一个结构中,其中每个数组的大小都不同。例如:
typedef struct task_list
{
int total_tasks;
unsigned int *task_array
}task_list;
typedef struct node_list
{
int total_nodes;
task_list *array_node
}node_list;
因此,如果我有 5 个节点,那么total_nodes
将是5
并且我希望有 5 个后续数组,即array_node[0]
, array_node[1]
... array_node[4]
。每个数组都包含无符号整数(任务)。问题是这些数组中的每一个都拥有不同数量的任务(total_tasks
在 struct 中task_list
),因此每个数组的大小都会不同。
如何为每个任务数组创建和分配内存?以后访问它们的最佳方式是什么?