C++ 如何使用用户输入正确修改二维数组中的字符数组元素?专门用于电影院座位

C++ 如何使用用户输入正确修改二维数组中的字符数组元素?专门用于电影院座位,c++,multidimensional-array,C++,Multidimensional Array,我一直在设计一个座位表,特别是模仿电影院的座位,使用2D字符数组,有行有列。我用字符初始化数组,表示座位是空的。但是,我想让用户能够选择一行和一列来选择他们想要的座位,并将数组中的元素替换为“*”以表示它已被占用。问题是我做了一个用户输入,所以它应该修改和更新座位表和有人坐的座位,但相反,它显示的座位,好像从来没有人坐过一样 #include <iostream> #include <iomanip> //Global variable. char seatingCha

我一直在设计一个座位表,特别是模仿电影院的座位,使用2D字符数组,有行有列。我用字符初始化数组,表示座位是空的。但是,我想让用户能够选择一行和一列来选择他们想要的座位,并将数组中的元素替换为“*”以表示它已被占用。问题是我做了一个用户输入,所以它应该修改和更新座位表和有人坐的座位,但相反,它显示的座位,好像从来没有人坐过一样

#include <iostream>
#include <iomanip>

//Global variable.
char seatingChart[15][30];

//Function prototype.
void theaterDisplay();

using namespace std;

int main()
{
   int choice;
   int row;
   int col;

//initializing all elements in array with '#'.
for(int i = 0; i < 15; i++)
{
    for(int j = 0; j < 30; j++)
        seatingChart[i][j] = '#';
}

//Loop to let user input the seat they want.
while(true)
{
    //Calling function to display seats so user can decide.
    theaterDisplay();

    cout << "Enter row: ";
    cin  >> row;
    cout << "Enter col: ";
    cin  >> col;

    if(seatingChart[row-1][col-1] == '*')
    {
        cout << "Seat is taken.\n";
    }
    else
    {
        seatingChart[row-1][col-1] == '*';
    }

}

}

//This function is simply just to display the seats available.
void theaterDisplay()
{
cout << endl << setw(25) << "Seats\n";
cout << "\t123456789012345678901234567890\n";

for(int i = 0; i < 15; i++)
{
    cout << "row " << (i + 1) << "\t";

    for(int j = 0; j < 30; j++)
    {
        cout << seatingChart[i][j];
    }
    cout << endl;
}
}
我很感激你们中的任何一位能够找出我做错了什么,因为我觉得它应该可以正常工作,但由于某种原因,当用户输入行和列时,它不会覆盖数组中的“*”。请随意粘贴并运行它。希望我的代码是直截了当的,如果你需要一些澄清让我知道。提前谢谢

seatingChart[row-1][col-1] == '*';
应该读

seatingChart[row-1][col-1] = '*';

我想指出,许多剧院没有简单的网格式座位布局。很多都是弯曲的,而且行的大小也不一样。我觉得自己很傻,因为我没有意识到我在不该做的事情上滥用了操作符,并发布了这篇文章。非常感谢你,你不知道我费了多大劲才弄明白。干杯