gpt4 book ai didi

c++ - int A[n] 分配在 STACK 还是 HEAP 上?

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

如果您执行了以下几行:

    void dummy () {
int n;
scanf ("%d", &n);
int A[n];
}

数组A是分配在栈上还是堆上?

最佳答案

这应该是 C 或 C++ 问题吗?

请注意,您的数组声明在 C++ 中是正式非法的。在数组声明中使用非常量表达式指定数组大小是非法的。

假设您的 C++ 编译器支持此声明(借用 C 语言的此功能),A 是一个本地数组对象。它的分配方式与声明的任何其他没有链接的本地对象相同,即具有自动存储持续时间(在您的术语中为“在堆栈上”)。

关于c++ - int A[n] 分配在 STACK 还是 HEAP 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19127928/

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