C++ 字符**+;输入「&引用;人物

C++ 字符**+;输入「&引用;人物,c++,pointers,char,C++,Pointers,Char,我目前正在尝试解决一个迷宫算法,但我已经开始了,因为我似乎无法从用户那里获取“”字符。我不知道迷宫的大小,直到用户输入一个大小,所以我有一个2d数组的字符**设置。我发现我不能将cin用于获取“”,所以我想使用cin.get或cin.getline,似乎无法正确使用它们。这是我代码中有问题的部分: int main(){ int size_x; int size_y; char** array; cin >> size_x >> siz

我目前正在尝试解决一个迷宫算法,但我已经开始了,因为我似乎无法从用户那里获取“”字符。我不知道迷宫的大小,直到用户输入一个大小,所以我有一个2d数组的字符**设置。我发现我不能将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();
            }
    }

我可能只是在做一些非常愚蠢的事情,但我想不出来。任何帮助都将不胜感激

对于cin.get(),您可以使用getchar(),只获取其中一个字符,并将其视为字符。修改数组[i][k]=cin.get();到cin>>数组[i][k]有效。当我执行cin>>数组[i][k]时,它不允许我输入“”字符。我也需要这些空间。请尝试cin>>noskipws>>array[I][k];getchar()不返回int吗?那么我需要将我的char**数组更改为int**数组吗?
1
2
3
done