【发布时间】:2013-04-20 03:00:51
【问题描述】:
我似乎无法让我的键盘接受输入,我不知道为什么。我已经刷新了缓冲区(或者我认为我这样做了),我得到的只是 BCS。
这是我的菜单功能
//Menu
int menu() {
int choice;
do {
printf("1)Move\n2)Display Maze\n3)Peek ahead\n");
scanf("%i", &choice);
while(getchar() != '\n');
} while(choice<=0 && choice>3);
return choice;
}//end menu
这是我的主要内容。我先把迷宫打印出来再显示菜单
printMaze(maze);
do
{
choice = menu();
if(choice == 1)
{
//direction = readDirection();
//move(maze, direction);
printf("Hi\n");
}// end choice
else if(choice ==2)
//displayMaze(maze);
printf("Hello\n");
else
//peek(maze);
printf("Goodbye\n");
} while(choice!=4);//hag doesn't kill me or i find the exit)
【问题讨论】:
-
@luserdroog 闪烁光标综合症.....我在菜单显示结束时将其缩小到右侧。它实际上并没有达到下面的任何代码,但我无法弄清楚我做错了什么
-
使用 %d 代替 %i.. 参考 bytes.com/topic/c/answers/…
-
@Mullaly
%i有点不寻常,但我认为它错。在您链接的页面中,输入错误(初始 0 触发八进制模式,其中 8 和 9 是非法数字)。 -
@Mullaly 同样的事情。它不接受任何东西
-
投票关闭,因为过于本地化。请参阅 OP 对答案的评论。