все компилируется, но когда я запускаю программу, кажется, что она полностью пропускает функцию player1 и переходит непосредственно к функции printBoard, когда я запрашиваю переменные, необходимые в player1 перед циклом, она принимает их и по-прежнему пропускаетпетля.У меня ранее была другая функция bool, которая работала просто отлично
#include<iostream>
using namespace std;
char board[9] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
void printBoard();
bool player1(char);
int main()
{
char m;
char x;
char o;
cout << "Welcome to Tic- Tac- Toe!" << endl;
cout << "Choose your mode: " << endl;
cout << "1: Player vs Player" << endl;
cin >> userCommand;
if (userCommand == 1) {
cout << "Player vs Player" << endl;
cout << "Player 1 will use 'X'" << endl;
cout << "Player 2 will use 'O'" << endl;
printBoard();
while (!player1) {
cout << "Player 1 please enter space: ";
cin >> m;
}
printBoard();
}
else {
cout << "Player vs AI";
}
return 0;
}
void printBoard()
{
cout << board[0] << "|" << board[1] << "|" << board[2] << endl;
cout << "-"
<< " "
<< "-"
<< " "
<< "-" << endl;
cout << board[3] << "|" << board[4] << "|" << board[5] << endl;
cout << "-"
<< " "
<< "-"
<< " "
<< "-" << endl;
cout << board[6] << "|" << board[7] << "|" << board[9] << endl;
}
bool player1(char m)
{
if (board[m] == m) {
board[m] = 'x';
return true;
}
else {
return false;
}
}