C语言,用Visual Studio2012编译,控制台窗口老是自动关闭。
为何用VS2012调试程序结尾使用getchar不起效果,用getch就可以。在就是我下面这个程序,运行后,显示两行文字,输入y,又显示两行文字(goto语句成功执行),...
为何用VS2012调试程序结尾使用getchar不起效果,用getch就可以。
在就是我下面这个程序,
运行后,显示两行文字,输入y,又显示两行文字(goto语句成功执行),但是这时我不论输入y还是n,窗口直接关闭了;
再运行,显示两行文字,输入n,等待键入(getch函数成功执行),窗口在有按键后关闭。
我想知道为何第一种运行中,执行了一次goto后,就不执行goto也不执行getch,就这么直接关闭了?
#include <stdio.h>
#include <conio.h>
int main(void)
{
char choice = 'n';
start:
printf("Hello world!\n");
printf("Do again? (y or n):\n");
scanf("%c",&choice);
if(choice == 'y')
goto start;
getch();
return 0;
} 展开
在就是我下面这个程序,
运行后,显示两行文字,输入y,又显示两行文字(goto语句成功执行),但是这时我不论输入y还是n,窗口直接关闭了;
再运行,显示两行文字,输入n,等待键入(getch函数成功执行),窗口在有按键后关闭。
我想知道为何第一种运行中,执行了一次goto后,就不执行goto也不执行getch,就这么直接关闭了?
#include <stdio.h>
#include <conio.h>
int main(void)
{
char choice = 'n';
start:
printf("Hello world!\n");
printf("Do again? (y or n):\n");
scanf("%c",&choice);
if(choice == 'y')
goto start;
getch();
return 0;
} 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询