gpt4 book ai didi

c - int 数组的大小未知

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

我有一个struct其中包含 int 的数组s。我不想修复数组的大小,因为我不知道有多少元素将进入其中,并且不想浪费内存。

int 指针数组本质上是相同的。

我尝试了指向整数数组的指针和双指针,但没有成功。

我怎样才能做到这一点?

注意:

我所说的 int 指针数组的意思是,如果我设置一个固定大小的 int 指针数组,那么我仍然在浪费空间,所以从这个意义上说,它与 int 的固定大小数组没有区别。 s。唯一的区别是 intint pointer大小可能不同。

最佳答案

An array of int pointers would be the same essentially.

不,你的意思是一个指针(int *):

int *arr = malloc(sizeof(*arr) * n);

如果您事先不知道n:

int n = 0, *arr = NULL;

while (condition) {
arr = realloc(arr, sizeof(*arr) * (n + 1));
n++;
}

关于c - int 数组的大小未知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26375137/

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