21xrx.com
2025-03-30 12:39:52 Sunday
文章检索 我的文章 写文章
如何在C++中输入不定长度的数组
2023-07-12 15:33:34 深夜i     38     0
C++ 数组 不定长度 输入 动态内存分配

在C++中,输入不定长度的数组可以通过动态内存分配来实现。动态内存分配可以在程序运行时根据需要动态分配内存,使程序更灵活。

使用new运算符可以动态分配数组,其语法形式为:

datatype *name = new datatype[length];

其中,datatype是数组元素的数据类型,name是数组名称,length是数组的长度。

例如,下面的代码动态分配了一个长度为n的整数数组:

int *a = new int[n];

当不再需要该数组时,使用delete运算符可以释放已经分配的内存,其语法形式为:

delete [] name;

例如,下面的代码释放了数组a占用的内存:

delete [] a;

以下是完整的代码示例:

#include <iostream>
using namespace std;
int main() {
  int n;
  cout << "请输入数组的长度:";
  cin >> n;
  
  int *a = new int[n];
  cout << "请输入数组的元素:" << endl;
  for (int i = 0; i < n; i++) {
    cin >> a[i];
  }
  cout << "输出数组的元素:" << endl;
  for (int i = 0; i < n; i++) {
    cout << a[i] << " ";
  }
  cout << endl;
  delete [] a;
  return 0;
}

在运行该程序时,用户可以输入任意长度的数组,并向数组中输入元素。程序会输出用户输入的元素,并在结束时释放内存,以避免内存泄露。

总之,动态内存分配是在C++中处理不定长度数组的常用方法,它使得程序能够根据需要灵活地分配内存空间,增加了程序的可扩展性。

  
  

评论区