I am puzzled as to why you would call a structure consisting of a single char a "grid". Perhaps you had this in mind instead:
Code:
typedef struct
{
char token[6][7];
} Grid;
Now, you can simplify your Grid functions:
Code:
void initialize_grid(Grid *grid)
{
for (int y = 0; y < 6; y++)
{
for (int x = 0; x < 7; x++)
grid->token[y][x] = '0';
}
}
void print_grid(Grid *grid)
{
for (int y = 0; y < 6; y++)
{
for (int x = 0; x < 7; x++)
printf(" %c", grid->token[y][x]);
printf("\n");
}
}
and then your main function would work almost as-is:
Code:
int main(void)
{
Grid grid;
initialize_grid(&grid);
print_grid(&grid);
}