gpt4 book ai didi

在编译时分配的c++内存

转载 作者:行者123 更新时间:2023-11-30 01:48:00 27 4
gpt4 key购买 nike

我读到动态内存是在运行时在堆上分配的,而静态内存是在编译时在堆栈上分配的,因为编译器知道在编译时必须分配多少内存。

考虑以下代码:

int n;
cin>>n;
int a[n];

如果仅在运行期间读取其实际大小,编译器怎么可能知道在编译时为 a[] 分配多少内存?

最佳答案

由于您指定的确切原因,您将无法编译它。 C++ 需要有一个固定的数字才能执行编译。如果你想这样做,你必须使用动态分配。

关于在编译时分配的c++内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30847715/

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