gpt4 book ai didi

c - 这些数据需要什么样的数据模型?

转载 作者:行者123 更新时间:2023-11-30 20:46:50 25 4
gpt4 key购买 nike

使用 python 语法,我们有像这样的深层列表,

示例 1 - list = [1, [2, 3], 4]

示例 2 - list = [[1, [1, 1]], 1, [1, 1]]

其中每个子集在运行时必须属于list类或int类。

使用C语言,维护这样的数据需要什么样的数据模型?

注意:尺寸不固定,如示例所示

最佳答案

使用元素结构的前向声明。

// declare existence of a structure type to be used for array elements.
struct some_type_S;

// The list type is a count and pointer to an array of `struct some_type_S`
// Alternative: use a variable length array for `element`
typedef struct list_S {
size_t num_elements;
struct some_type_S *element;
// Alternative: use C99 and a variable length array for `element`
// struct some_type_S element[];
} list_T;

// Now define `struct some_type_S` as
// a flag (is_int) and a union of an `int` and a pointer to a list
typedef struct some_type_S {
_Bool is_int;
union {
int i;
list_T *list;
} u;
} some_type_T;

祝 C 编码愉快。

关于c - 这些数据需要什么样的数据模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40665647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com