我有几个问题,我正在通过Zed Shaw Book学习C,我想我会稍微休息一下,试着把迄今为止学到的东西都考虑进去。但后来我卡住了。
第一个问题是创建一个空框。我似乎无法做到这一点。我可以创建一个框,缺少底部部分,但是它被'*'填充,如果我只是''
,那么c编译器声明:create_border.c:12:14: error: expected expression
第二个问题,我不知道如何连接到键盘,这样当我向上,向下,向左,向右按下一个字符@
时,在它的边缘移动并停止
到目前为止,我所拥有的只是:
#include <stdio.h>
#define MAX_Y 6
#define MAX_X 6
void print_board(char board[MAX_Y][MAX_X]);
int main(int argc, char *argv[]) {
char exampleBoard[MAX_Y][MAX_X] = {
{'x','-','-','-','-','x'},
{'|','*','*','*','*','|'},
{'|','*','*','*','*','|'},
{'|','*','*','*','*','|'},
{'|','*','*','*','*','|'},
{'x','-','-','-','-','x'}
};
print_board(exampleBoard);
return 0;
}
void print_board(char board[MAX_Y][MAX_X]) {
int row = 0;
int col = 0;
for(row = 0; row < MAX_Y; row++) {
for(col = 0; col < MAX_X; col++) {
printf("%c", board[row][col]);
}
printf("\n");
}
printf("\n\n");
}
所有这些打印出来的是:
x----x
|****|
|****|
|****|
|****|
所以我所期待的是:
'*'
和@
个字符。 @
并在到达边界时停止。 非常感谢任何帮助。