gpt4 book ai didi

c++ - 阵列存储发生了什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:48:05 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Dynamic array in Stack?
How do compilers treat variable length arrays

我正在辅导的人写了一些代码,看起来像这样,编译,运行正常,让我觉得自己在这个过程中是一个完整的 C++ 初学者:

int main(int argc, char** argv)
{
int Index=0;
cin>>Index;
int Test_array[Index][Index];
...
}

现在,我在这里找到了为什么这有效的答案:about the array in C

但是,我仍然有一个疑问。

我的意思是,应该提前知道代码块的堆栈大小,对吗?所以可以肯定,Test_array 不能存储在堆栈上......

编译器是否在后台执行 new/malloc-delete/free 操作以将堆内存用于数组?

在那种情况下,如果在堆上找不到足够的内存,这样的代码会抛出 bad_alloc 异常吗?

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