gpt4 book ai didi

c - 在 C 中初始化数组不起作用

转载 作者:行者123 更新时间:2023-11-30 18:00:06 26 4
gpt4 key购买 nike

我正在尝试用“.”填充存储在二维数组中的 12x12 板。性格。

void initializeBoard(char board[BOARD_SIZE][BOARD_SIZE]) {
int i, j;
for (i=0; i<BOARD_SIZE; i++) {
for (j=0; j<BOARD_SIZE; j++) {
board[i][j] = '.';
}
}
}

然后打印:

void printBoard(char board[BOARD_SIZE][BOARD_SIZE]) {

int i,j;

for (i=0; i<BOARD_SIZE; i++) {
for (j=0; j<BOARD_SIZE; j++) {
printf(" %c", board[i][j]);
}
printf("\n");
}
printf("\n");

}

它打印出一个空网格。看起来板 [] [] 中没有存储任何内容。请帮忙?

最佳答案

看起来您做的一切都很好,至少在您显示的代码片段中是这样。当我运行以下程序时:

#include <stdio.h>

#define BOARD_SIZE 12

void initializeBoard(char board[BOARD_SIZE][BOARD_SIZE]);
void printBoard(char board[BOARD_SIZE][BOARD_SIZE]);

int main() {
char board[BOARD_SIZE][BOARD_SIZE];
initializeBoard(board);
printBoard(board);
return 0;
}

void initializeBoard(char board[BOARD_SIZE][BOARD_SIZE]) {
int i, j;
for (i=0; i<BOARD_SIZE; i++) {
for (j=0; j<BOARD_SIZE; j++) {
board[i][j] = '.';
}
}
}

void printBoard(char board[BOARD_SIZE][BOARD_SIZE]) {
int i,j;
for (i=0; i<BOARD_SIZE; i++) {
for (j=0; j<BOARD_SIZE; j++) {
printf(" %c", board[i][j]);
}
printf("\n");
}
printf("\n");
}

我得到以下输出:

$ ./a.exe
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .

您必须以某种方式/某个地方声明第二 block 板并将其传递给您的 printBoard() 函数。您能给我们看更多代码吗?

关于c - 在 C 中初始化数组不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10809366/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com