入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

C++中动态申请数组

创建时间:2015-04-14 投稿人: 浏览次数:7207

动态申请一维数组
申请使用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 << "
";
    }
    cout << endl;
    //使用完以后记得释放哦
    for (int i = 0; i < row; ++i)
    {
        delete[] matrix[i];
    }
    delete[] matrix;
    return 0;
}

输出结果:
动态二维数组申请

声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。