转载自:http://www.cnblogs.com/emituofo/archive/2012/07/24/2607074.html html
使用一些IDE(Visual C++,Dev C++等等)编写C/C++程序,常常会看到程序的执行结果一闪而过,
为了查看程序的执行结果,能够在代码的最后加上 缓存
system("pause");
这是比较流行的作法,可是看看这篇文章吧 Things to Avoid in C/C++ -- system("pause")
这篇文章不推荐你们使用"system("pause"); ",由于:
1. 不可移植。只适合DOS或Windows,可是不适合Linux等
2. 耗费系统资源。调用系统命令system(),去作"暂停程序"的事情有点大材小用。
3. 必须添加头文件:stdlib.h或者cstdlib
总之这是一个坏方法,应该摒弃。 spa
此外,他还推荐了替代方法:
1. C中,使用getchar();
2. C++中,使用cin.get(); code
我来丰富一下两种替代方法:
1. C中 htm
printf("按任意键继续……"); getchar();2. C++中
cout<<"按任意键继续……"; cin.clear(); cin.sync(); cin.get();备注:加上cin.clear(); cin.sync();这两句,是清空缓存区,
写在最后:我最后写的题目,由于不知道这个问题的具体描述,是“按任意键结束程序”,
仍是“程序结束前暂停,等待用户输入任意字符”,仍是“查看程序执行结果”,仍是“回显”什么的?
没有明确的描述,暂且用这个名字吧。 blog
附:也遇到这种状况,因此摘录下,分享之. ci