考研,作为一个菜渣重新开始学习C++,遇到的问题分享一下,有问题请指正。
写了一个很简单的小程序测试,结果出现闪退。经过查找资料,大致有两种解决办法:
1、在程序结尾添加system("pause");【若有return语句则写在return之前】
解析:system( const char *command );
system函数返回给定的命令字符串command 进行系统调用。如果命令执行正确通常返回零值。如果command 为 NULL, system()将尝试是否有可用的命令解释器。 如果有返回非零值,否则返回零值。
system是执行dos下面的一些命令,在DOS下能执行的指令,用system都可以执行。把dos的命令直接放到它的参数里面就可以执行,用户随意敲一个键后程序继续运行。
pause 它会提示“请按任意键继续...” ,pause命令没有任何的参数,它的命令就是它的本身,当pause命令运行后,会中断执行的语句。这个中断不是立即停止,只是暂停,按下任意键之后就会继续执行下面的语句。而且应该不止可以用一次,在一个批处理命令中,可以尝试使用多个pause命令。
2、在程序结尾添加getchar();【若有return语句则写在return之前】
解析:getchar()函数从STDIN(标准输入)获取并返回下一个字符,如果到达文件尾返回EOF.
这种方法是直接让程序运行getchar函数,让程序在接受一个字符后再退出,相当于自己按下任意键后程序才退出。
参考文章:http://www.jb51.net/article/49295.htm
http://bbs.csdn.net/topics/340015370
http://blog.csdn.net/aikenlovesea/article/details/9330945