在C++中,可以使用指针和动态内存分配来动态创建二维数组。以下是一个示例:
#include <iostream>
int main() {
int rows, cols;
std::cout << "请输入行数和列数:";
std::cin >> rows >> cols;
// 动态分配内存
int** arr = new int*[rows];
for (int i = 0; i < rows; i++) {
arr[i] = new int[cols];
}
// 初始化二维数组
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
arr[i][j] = i * cols + j;
}
}
// 打印二维数组
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
std::cout << arr[i][j] << " ";
}
std::cout << std::endl;
}
// 释放内存
for (int i = 0; i < rows; i++) {
delete[] arr[i];
}
delete[] arr;
return 0;
}
在此示例中,首先从用户处获取要创建的二维数组的行数和列数。然后,使用new
运算符动态分配内存以存储行指针。接下来,使用循环为每行分配内存以存储列数据。然后,可以按照需要使用循环初始化和访问二维数组。最后,必须记得在使用完二维数组后释放动态分配的内存,以防止内存泄漏。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/840181.html