我目前正在尝试解决迷宫算法,但我正在开始,因为我似乎无法从用户那里获取“”字符。在用户输入大小之前,我不知道迷宫的大小,所以我有一个二维数组的 char** 设置。我发现我无法使用 cin 来获取“”,所以我想使用 cin.get 或 cin.getline,但似乎无法正确使用它们。这是我的代码有问题的部分:
int main(){
int size_x;
int size_y;
char** array;
cin >> size_x >> size_y;
array = new char* [size_y];
for(int i=0; i < size_y; i++)
array[i] = new char[size_x];
//This part seems to not work properly
for(int i = 0; i < size_y; i++){
for(int k = 0; k < size_x; k++){
array[i][k] = cin.get();
}
}
在我输入 1 个字符后,剩余的字符将被视为空,程序会跳过剩余的部分。这是当我为 size_x 输入 1 和为 size_y 输入 4 时的输出,然后我为输入输入 1234:
1
2
3
done
我可能只是在做一些非常愚蠢的事情,但我无法弄清楚。任何帮助将不胜感激。