天天看點

c++定義未知元素個數(長度)的數組(數組的元素個數是個變量或者元數個數是使用者輸入值)

許多的初學者可能會想到以下的代碼

c++定義未知元素個數(長度)的數組(數組的元素個數是個變量或者元數個數是使用者輸入值)

直接用變量(n)來定意數組長度,這是犯法的(違規),但有些編譯器是允許的。可是用visual studio2019會報錯!

正确的代碼應該用指針來定義    如下:

#include<iostream>
using namespace std;
int main()
{
  cout << "請輸入元素個數:";
  int n;
  cin >> n;//輸入元素個數
  int* p;   //定義一個指針(數組名)
  p = new int[n];//指針指向一個數組,動态配置設定記憶體
  for (int i = 0; i < n; i++)
  {
    cout << "請輸第" << i + 1 << "個數:";
    cin >> p[i];
  }
  cout << endl;
  cout << "該數組是:";
  for (int k = 0; k < n; k++)
  {
    cout << p[k] << " ";//輸出數組
  }
  return 0;