zoukankan      html  css  js  c++  java
  • 查看C/C++程序执行结果的方法system("pause"),getchar(),cin.get()

    使用一些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
    总之这是一个坏方法,应该摒弃。


    此外,他还推荐了替代方法:
    1. C中,使用getchar();
    2. C++中,使用cin.get();

    我来丰富一下两种替代方法:
    1. C中

    printf("按任意键继续……");
    getchar();

    2. C++中

    cout<<"按任意键继续……";
    cin.clear();
    cin.sync();
    cin.get();

    备注:加上cin.clear(); cin.sync();这两句,是清空缓存区,
             让cin.get();真正接收到你的键盘输入。


    最后定的题目,因为不知道这个问题的具体描述,是“按任意键结束程序”,
    还是“程序结束前暂停,等待用户输入任意字符”,还是“查看程序执行结果”,还是“回显”什么的?
    没有明确的描述,暂且用这个名字吧。。

  • 相关阅读:
    ci上传图片
    Mac下使用svn命令
    linux 下svn忽略文件
    thinkphp5 隐藏入口和支持pathinfo
    ci tp重定向
    php命名空间
    thinkphp5学习记录一
    Mac下安装homebrew
    使用iTerm2快捷连接SSH
    摄影基础
  • 原文地址:https://www.cnblogs.com/emituofo/p/2607074.html
Copyright © 2011-2022 走看看