gpt4 book ai didi

language-agnostic - 什么是柔性阵列?

转载 作者:行者123 更新时间:2023-12-01 07:22:18 24 4
gpt4 key购买 nike

什么是灵活阵列?
我找不到太多关于它的信息。

最佳答案

有几件事可以引用。不过,我所看到的唯一使用精确措辞的地方是 C99。

灵活的数组成员是过去(通常)被称为“结构黑客”的官方 C99 名称。基本思想是你定义一个像这样的结构:

struct x {
int a; // whatever members you want here.
size_t size;
int x[]; // no size, last member only
};

这主要(或专门)用于动态分配。当你想分配一个这种类型的对象时,你需要为你需要的任何大小的数组分配足够的额外空间:
struct x *a = malloc(sizeof(struct x) + 20 * sizeof(int));
a->size = 20;
size member 不是绝对必要的,但通常可以方便地跟踪为项目分配的大小。上面的一个有 20 个 int 的空间,但主要的一点是你可能有几个,每个都有自己的大小。

关于language-agnostic - 什么是柔性阵列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2732901/

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