歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

C++中動態申請數組

動態申請一維數組
申請使用new,釋放使用delete[]
可以通過數組名[下標]和*(數組名+下標)的方式訪問數組

int main()
{
    int number = 10;
    int *array = new int[number];
    //數組初始化
    for (int i = 0; i < number; ++i)
    {
        array[i] = i;
    }
    for (int i = 0; i < number; ++i)
    {
        cout << *(array + i) << " ";
    }
    cout << endl;
    //使用完以後記得釋放哦
    delete[] array;
    return 0;
}

動態申請二維數組
二維數組的申請需要循環地申請二維數組的行指針。

int main()
{
    int row = 10;
    int column = 10;
    //申請空間
    int **matrix = new int*[row];
    for (int i = 0; i < row; ++i)
    {
        matrix[i] = new int[column]; 
    }
    //矩陣初始化
    for (int i = 0; i < row; ++i)
    {
        for (int j = 0; j < column; ++j)
        {
            matrix[i][j] = i * 10 + j;
        }
    }
    //矩陣輸出
    for (int i = 0; i < row; ++i)
    {
        for (int j = 0; j < column; ++j)
        {
            if (i == 0) cout << '0';
            cout << matrix[i][j] << ' ';
        }
        cout << '\n';
    }
    cout << endl;
    //使用完以後記得釋放哦
    for (int i = 0; i < row; ++i)
    {
        delete[] matrix[i];
    }
    delete[] matrix;
    return 0;
}

輸出結果:

Copyright © Linux教程網 All Rights Reserved