gpt4 book ai didi

c - 在运行时设置数组大小

转载 作者:行者123 更新时间:2023-12-01 07:45:29 25 4
gpt4 key购买 nike

我知道如何在函数内创建结构数组:

typedef struct item
{
int test;
};

void func (void)
{
int arraysize = 5;
item ar[arraysize];
}

但是当全局声明数组时,我该如何做:

typedef struct item 
{
int test;
};

item ar[];

void func (void)
{
int arraysize = 5;
// What to here?
}

最佳答案

可变长度数组只允许在 C 中用于具有自动存储持续时间的数组。在文件范围内声明的数组具有静态存储持续时间,因此不能是可变长度数组。

您可以使用malloc 为编译时大小未知的数组对象动态分配内存。

关于c - 在运行时设置数组大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14295786/

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