0

私は Tic-Tac-Toe プログラムを書いており、プレーヤーの順番の関数を書いています。Tic-Tac-Toe ボード (3x3 配列) をポインタの形で渡していますb。唯一の問題は、最後の行でタイトルにエラーが表示されることです。

添字付きの値は、配列でもポインターでもベクトルでもありません:b[PlayerCoordsX][PlayerCoordsY] = "x";

=テストのために、複数の異なる値を試しました。文字と数値の両方で問題が解決されません。

これは、関連するビットである(私が願っている)短縮されたコードです。

void PlayerTurn(int *b);

...

int main(void)
{
    int Board[2][2];
    int (*b)[2][2];
    b = &Board;

    ...

    void PlayerTurn(int *b);

    ...

return 0;
}

void PlayerTurn(int *b)
{
    int PlayerCoordsX, PlayerCoordsY;

    while ((PlayerCoordsX != 1 || PlayerCoordsX != 2 || PlayerCoordsX != 3) && (PlayerCoordsY != 1 || PlayerCoordsY != 2 || PlayerCoordsY != 3))
    {
        printf("Enter the X coordinate you would like to use:");
        scanf("%i", &PlayerCoordsX);
        PlayerCoordsX = PlayerCoordsX - 1;

        printf("Enter the Y coordinate you would like to use:");
        scanf("%i", &PlayerCoordsY);
        PlayerCoordsX = PlayerCoordsY - 1;
    }

    b[PlayerCoordsX][PlayerCoordsY] = "x";
}
4

2 に答える 2