嗨,我知道您是否必须声明一个2d数组array[i][j]
j,并且您无法将第二个数组作为用户输入来使用,有没有办法通过一个变量来获取第二个数组的长度和高度,就像都是变量一样我输入他们之前没有声明过吗?
cin>>i;
cin>>j;
int array[i][j];
我已经尝试向用户询问两个变量,并将它们设置为数组的高度和长度,但是没有用。
#include<iostream>
using namespace std;
int a;
int b;
cin>>a;
cin>>b;
int array[a][b];
可变长度数组在C ++中不是一个选项。您可能在某些编译器中将其作为扩展来支持C的可变大小数组。
您的问题的一种解决方案是std::vector:
std::vector<std::vector<int>> vec(a, (std::vector<int>(b)));
在godbolt上直播