vs编译c 语言时闪过,vs中控制台程序输出时一闪而过的解决办法

在VS编写控制台程序的时候,包括使用其他IDE(Visual C++)编写C/C++程序,经常会看到程序的执行结果一闪而过,要解决这个问题,可以在代码的最后加上system("pause")、getchar()、cin.get()等。

一、使用system("pause")

比较常用的做法是使用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();

二、使用getchar()

即在主函数尾部或程序最后加上getchar();

也就是接受键盘输入,这样程序就不会一闪而过,因为程序还没有执行完!

注:当代码中存在scanf()函数时,需要在getchar();前加上fflush(stdin);清除键盘缓存,以防影响getchar()的接收!

三、使用cin.get()

cout<

cin.clear(

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值