Oto moje problematyczne kodowanie: Muszę wziąć imię 2 gracza. Następnie, gdy w następnej części, gdy znacznik gracza zmieni nazwę zapisaną w "currentPlayer", należy zmienić również nazwę zapisaną w playerOne lub playerTwo. Tak nie jest, jak to naprawić? Proszę rozwiązać, próbowałem uczynić go zmienną odniesienia z symbolem &, ale pojawia się błąd mówiąc, że tablica odniesienia nie jest dozwolone.Przekazywanie tablicy znaków w funkcji?
void boardMarker(int &, char playerOne[], char playerTwo[], char &playerMarker, char currentPlayer[]);
int main()
{
char playerOne[100];
char playerTwo[100];
char currentPlayer[100] = "playername";
boardMarker(playerTurn, playerOne, playerTwo, playerMarker, currentPlayer);
}
void boardMarker(int &playerTurn, char playerOne[100], char playerTwo[100], char &playerMarker, char currentPlayer[100])
{
// Set player markers
//Player 1 uses X and Player 2 uses O
if (playerTurn == 1)
{
playerMarker = 'X';
currentPlayer = playerOne;
}
else
{
playerMarker = 'O';
currentPlayer = playerTwo;
}
}
ktokolwiek inny głosował, to było niewłaściwe. To dobrze napisane pytanie. – abelenky
Nie wiem nawet, jak powiedzieć, jak nieprawidłowo wygląda twój kod. Czy to się kompiluje?!?!?! Na przykład jako parametr użyto zmiennej o nazwie playerTurn, która nigdy nie została zadeklarowana. – karlphillip
w takim przypadku, dlaczego nie awansowałeś, aby wyrównać wynik? – catchmeifyoutry