C++编译技巧笔记—VS运行成功的exe为何闪退以及怎么直接调用

C++编译笔记—VS运行成功的exe为何闪退以及怎么直接调用;
首先我们要明白生成的exe文件本质是控制台程序,这些都是依赖于windows的控制台窗口,程序执行完就退出了。(比如,如果你程序中有scanf语句,那么打开exe的时候不会立马结束,而是等待你的输入,等跑完程序,再自动关闭,就是这个道理)
下面介绍几种常用解决办法
第一种:加个头文件windows.h,然后在代码段末尾加个 system(“pause”);
这里的system就是调用从程序中调用系统命令(和shell命令)。
system(“pause”)就是从程序里调用“pause”命令;
“pause”这个系统命令的功能很简单,就是在命令行上输出一行类似于“Press any key to exit”的字,等待用户按一个键,然后返回。还是同样的道理,等待用户输入,才能算执行完毕。
第二种:
exe文件同目录下新建一个txt文档,里面输入如下内容

xx.exe
pause

然后退出保存,把后缀txt改为bat然后运行,那个xx就是文件的名字。
然后打开.bat文件运行程序。(.bat文件命名随意)
这里的.bat文件是批处理文件(也被称为批处理程序或脚本)是无格式的文本文件,它包含一条或多条命令。它的文件扩展名为 .bat.cmd。在命令提示下键入批处理文件的名称,操作系统就会按照该文件中各个命令出现的顺序来逐个运行它们。(使用批处理文件,可以简化日常或重复性任务。)
这里执行了xx.exe这个程序,并且调用了pause。 类似法1
第三种:
getch();
文首添加#include <conio.h>
在代码段末尾加上getch();就可以了
方法当然并不唯一,希望对你有所帮助
第四种:
将exe文件和所需要读取的文件放在同一个文件夹下,然后在运行,可能还是会闪退,解决方法可以参考以下
输入cmd,敲回车,该方法可以用来排错,辅助为何打不开和闪退,个人觉得很好用
在这里插入图片描述
在这里插入图片描述
在该路径下,输入exe文件名,然后敲回车,成功运行,如果出现找不到某某文件,但文件以及存在,那么这依然还是路径问题,就相对于exe新建文件夹命名为你所需要的文件夹名称,将所需文件放到该文件夹下,这样即可访问成功。
blog.csdnimg.cn/d452d8f849b145a4a9f326149ed7fee8.png)
在这里插入图片描述

为何将exe分享给别人,别人打不开,那是因为读取文件的路径不一致,没有配置相应的环境,一般要对方的电脑重新生成exe才能使用.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浪迹天涯@wxy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值