Привет, я использую переменную:
char board[9][9] = {
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '}, /* Game board */
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
{' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '}
};
Что я хочу сделать, это использовать мои структуры, которые выглядят так:
typedef struct {
int adjacent_mines;
bool revealed;
bool is_mine;
char identifier[1];
} Tile;
struct GameState {
Tile tiles[NUM_TILES_X][NUM_TILES_Y];
};
typedef struct GameState GameState;
, чтобы я мог затем использовать следующиефункция для присоединения символа к моему board[][]
:
for (int i = 0; i < NUM_TILES_X; i++) {
for (int j = 0; j < NUM_TILES_Y; j++) {
board[i][j] = tileInfo.tiles[i][j].identifier;
}
}
Где tileInfo.tiles[i][j].identifier
был установлен с помощью этого:
strcpy(tileInfo->tiles[x][y].identifier, "*");
Вывод, который я получаю на моей консоли, заключается в том, что incompatible pointer to integer conversion assigning to 'char' from 'char [1]'
как я могу решить эту проблему и кто-то может объяснить, пожалуйста, что происходит?Извините, если это глупо, я новичок в C и указатели