本文主要是介绍解决 C/C++ 程序执行一闪而过的方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
作者: 一去、二三里
个人微信号: iwaleon
微信公众号: 高效程序员
在 VS 编写控制台程序的时候,包括使用其他 IDE(Visual C++)编写 C/C++ 程序,经常会看到程序的执行结果一闪而过,要解决这个问题,可以在代码的最后加上 system("pause")
、getchar()
、cin.get()
。
推荐方法
比较常用的做法是使用 system("pause")
,但这篇文章:Things to Avoid in C/C++ – system(“pause”) 不推荐使用 system("pause")
,因为:
- 不可移植:只适合 Dos 或 Windows,不适合 Linux 等。
- 耗费系统资源:调用系统命令
system()
去做"暂停程序"的事情有点大材小用。 - 必须添加头文件:
stdlib.h
或cstdlib
。
所以,应该尽量摒弃。
推荐方法:
- 在 C 中,使用
getchar()
。 - 在 C++ 中,使用
cin.get()
。
替代方法
丰富一下两种替代方法:
在 C 中:
printf("按任意键继续……");
getchar();
在 C++ 中:
cout<<"按任意键继续……";
cin.clear();
cin.sync();
cin.get();
加上 cin.clear()
、cin.sync()
这两句,是清空缓存区,让 cin.get()
真正接收到你的键盘输入。
这篇关于解决 C/C++ 程序执行一闪而过的方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!