以下数组从何处获取内存

Where does following array getting memory from?

本文关键字:获取 内存 何处 数组      更新时间:2023-10-16

在函数fun中,我正在分配数组A。数组的大小在运行时是已知的,我正在从哪个区域A获取内存。我疯狂的猜测是堆叠,但我想不出任何原因。

#include<iostream>
using namespace std;

void fun(int n)
{
   int A[n];
    //do something with array
   for(int i=0;i<n; i++)
     cout<<A[i]<<" ";
   cout<<"n";
}
int main()
{
  int n;
  cin>>n; 
  fun(n);
  return 0;
}

"以下数组从哪里获取内存?"

从CCD_ 1。

注意:
使用变量分配堆栈本地数组是编译器(标准版本)特定的扩展。扩展的常见术语是VLA(可变长度数组),它得到了几个编译器的支持(例如GCC g++),一些c标准定义也要求它。

请参阅此处了解更多说明:C++支持可变长度数组吗