新手学习C语言遇到了一个小问题
同样的代码,在VS2017和VC++6.0运行结果不同,怎么回事?程序代码:
#include<stdio.h> #include<conio.h> int main() { char m,n; printf("开始录入\n"); while (1) { m = getch(); if (m == '-') { puts("输入结束"); exit(0); } else { //录入 putchar(m); printf("按“-”号停止输入,按其他任意键继续输入\n"); } } }
在VS2017上运行不正常,在VC6.0可以正常运行,在VS上面输出两行字,而且在第二行前面还有个空格
1图是VS运行结果
2图是VC运行结果
求解,为什么VS会跳过m=getch();