如何从2D数组打印单个字符

时间:2018-04-14 21:02:20

标签: c multidimensional-array char

我正在尝试打印出一个空的tic tac toe table,但是当程序到达第二个for循环时它会崩溃。

void pBoard(char board[3][3])
{
    int i;
    int j;
    printf("  0 1 2");
    for (i = 0; i < SIZE; ++i){
        printf("\n%d ", i); //After this it crashes
        for (j = 0; j < SIZE; ++j){
            printf("%c ", board[i][j]);
        }
    }
}

打印

        0 1 2
      0

编辑:评论系统似乎没有让我像在这里一样格式化代码。我用

调用了这个函数
 while(choice != 'P'){
        pBoard(board[3][3]);
        player = 'X';
        play(board[3][3], player);
        if (checkWinner(board[3][3])){
            break;
        }
        player = 'O';
        play(board[3][3], player);
        if (checkWinner(board[3][3])){
            break;
        }
    }

尺寸定义为3.

我在执行过程中收到错误消息。

1 个答案:

答案 0 :(得分:0)

你的问题是你用一个字符调用pboard:

ggplot(xy_df_filt_2, aes(x = x, y = y, color = as.factor(subClust), shape = as.factor(Clust))) +
    geom_point() +
    scale_color_brewer(palette = "Set2") +
    facet_wrap(~ Clust)

您应该使用数组调用它:

pBoard(board[3][3]);

我测试了这个线束:

pBoard(board);