如何解决Dev-C++中failed to execute的问题

博主的github链接,欢迎大家来访问~:https://github.com/Sh-Zh-7

很多人都问我写C语言使用哪个编译器比较好,这个问题问的相当小白。但是我大概能明白背后的意思:让我推荐一种工作环境。对于新人向的工作环境,我一般都是推荐——大的程序(项目)使用宇宙第一IDE Visual Studio,小的程序(例如平时的一些练习,短小精悍的算法题)使用Dev-C++,但是有部分人在使用Dev-C++的时候,会出现以下问题:

 程序没有任何输出,控制台上就这么两句话,让人摸不着头脑。照理说这种问题问得相当基础,毕竟你在写HELLO WORLD时就可能碰到,一般而言百度一下就解决了,不过今天我会提这个问题,就是因为百度上没有这个问题的答案。

1. 可能的原因:编译器平台错了

原来是操作系统和编译器运行的平台不匹配的问题, 但是我的电脑是64位(X64)的,用的也是64位平台的gcc,为什么也不行呢?而且巧合的是,对于某一部分程序,这种方法竟然还真的是有效的:

 这个原理至今我也没有搞清楚,但毫无疑问这个结果是错误的,因为我系统的配置(如何查看系统的配置?控制面板——系统和安全——系统)就是64位:

 修改编译器后,再次进入Dev-c++时提示:你根本就没有32位的编译器(没有编译器却能编译,这个也很诡异)

 

如果你认为不需要搞清楚为什么,只要能编译并执行就行,那你就大错特错了,因为我用32位编译器换了个程序,还是不能编译:

 

2. 可能的原因:文件没有访问权限

为什么要提出文件没有访问的权限?因为不只是Dev-c++这个平台上出现了问题,如果你单独用gcc生成可执行文件的话,也是无法执行文件的,而且,一执行就会把可执行文件删除:

这个答案其实也是有问题的,首先,如果真的有权限的话,可以以管理员的身份打开cmd在执行,事实上,也会出现类似的问题,其次,我们可以查看文件夹的共享情况,发现任何人对它都有绝对的控制权(查看方式:文件夹属性——安全):

看起来至少这个问题,在我的计算机上,已经是平台无关的了。可执行文件的执行被阻止,点击不仅没执行,还把可执行文件删了,这一切一切,都指向了下面的第三方软件。。

3. 可能的原因:杀毒软件

在我同(er)学(zi)的提醒下,我发觉问题可能出自杀毒软件,因为杀毒软件会发现修改系统,然后把相应文件删除。我的电脑上使用的杀毒软件是McAfee,把它的即时扫描关(你甚至都找不到关闭它的按钮)了就可以了。怎么说呢?虽然说McAfee经常把我下载的软件和生成的可执行文件当流氓软件删掉,但不可否认它的强大性。很多产品(包括操作系统在内),都越来越简单化——用户无需自己进行复杂的配置。这对只是简单使用电脑的人群来说是很友好,但是对程序员就不一样了。

4. 总结

我在写这篇博客的时候,主线是按照自己的问题,以及自己的思路来的,我在上文中排除了一些原因,但这都是基于我自己的电脑。不过大家也可以看到我在各个标题中使用的词是“可能的原因”——啥意思,有可能是真的这一步错了。具体的可以看我的分析,再结合自己的情况即可。

  • 39
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 33
    评论
Failed to execute”是指一个命令或程序在执行过程出现了错误,导致无法成功执行。这个错误可能是由于多种原因引起的,例如: 权限问题:执行程序或命令时,可能需要具有特定的权限才能成功执行。如果当前用户没有这些权限,则会出现“Failed to execute”错误。 文件路径问题:如果指定的程序文件路径不正确,或者在执行命令时使用了错误的命令名称,也会导致“Failed to execute”错误。 内存或系统配置问题:如果系统内存不足或者某些硬件配置不符合程序的要求,那么程序可能无法成功执行,并出现“Failed to execute”错误。 依赖项问题:某些程序需要特定的依赖项才能正常运行,如果这些依赖项没有正确安装或配置,程序将无法执行。 为了解决Failed to execute”错误,可以尝试以下方法: 检查权限问题:确保当前用户具有足够的权限来执行程序或命令。 确认文件路径和命令名称是否正确:确保指定的程序文件路径和命令名称是正确的,并且与所需的程序匹配。 检查内存和系统配置:确保系统具有足够的内存,并且硬件配置符合程序的要求。 检查依赖项:确保程序所需的依赖项已经正确安装和配置。 如果尝试以上方法仍然无法解决问题,可以尝试查看相关日志或错误消息,以获取更详细的错误信息,并进一步排除问题
评论 33
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值