当前位置:首页 » 编程语言 » 自己写的c语言exe执行不了
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

自己写的c语言exe执行不了

发布时间: 2022-03-07 11:16:30

① 为什么c语言无法运行程序

首先,检查一下程序里有没有中文字符。
其次,用#include"stdio.h"这种方式调用需要.h文件在当前路径下。我个人认为改成#include<stdio.h>比较好。
再其次,没有getch这个函数,只有getchar,建议你拿不准的时候网络。
语法的问题基本就是这些,说说语义,你的a没复制直接printf没有意义。
忘说了,还要在最后加上return 0;,虽然不加可能也没什么关系,编译器可能会自己给你加,但是还是加上好。

② C语言,为什么我建出来的项目生成的exe无法运行

没有明显语法错误,如果编译通过(允许中间定义变量)应该是能正常运行,最好试试直接编译器运行是不是正常。
另外你求的应该是将一串整型数字逆序排列。

③ C语言编程中写好的程序不能执行,请问是什么原因呢

ALT+R 运行
ALT+F5 查看结果

④ C语言程序为什么不能运行


#include<stdio.h>

intmain(void){
inti,num=0;
i=1;

do{
num+=1;
i++;
}while(i<=100);

printf("%d ",num);
return0;
}

试试这个!

⑤ c语言exe怎么不能运行............

是不是没有找对啊!或者是你的exe程序没有停留符一闪而过了!你加上这个头文件#include);就行了;
,和这句话system("pause"

⑥ 为什么我的C语言软件不能执行程序了。如图

你水果其他下载器吗? DLL文件(Dynamic Linkable Library 即动态链接库文件),是一种可执行文件,它允许程序共享执行特殊任务所必需的代码和其他资源比较大的应用程序都由很多模块组成,这些模块分别完成相对独立的功能,它们彼此协作来完成整个软件系统的工作。可能存在一些模块的功能较为通用,在构造其它软件系统时仍会被使用。在构造软件系统时,如果将所有模块的源代码都静态编译到整个应用程序 EXE 文件中,会产生一些问题:一个缺点是增加了应用程序的大小,它会占用更多的磁盘空间,程序运行时也会消耗较大的内存空间,造成系统资源的浪费;另一个缺点是,在编写大的 EXE 程序时,在每次修改重建时都必须调整编译所有源代码,增加了编译过程的复杂性,也不利于阶段性的单元测试。Windows 系统平台上提供了一种完全不同的较有效的编程和运行环境,你可以将独立的程序模块创建为较小的 DLL 文件,并可对它们单独编译和测试。在运行时,只有当 EXE 程序确实要调用这些 DLL 模块的情况下,系统才会将它们装载到内存空间中。这种方式不仅减少了 EXE 文件的大小和对内存空间的需求,而且使这些 DLL 模块可以同时被多个应用程序使用。Windows 自己就将一些主要的系统功能以 DLL 模块的形式实现。一般来说,DLL 是一种磁盘文件,以.dll、.DRV、.FON、.SYS 和许多以 .EXE 为扩展名的系统文件都可以是 DLL。它由全局数据、服务函数和资源组成,在运行时被系统加载到调用进程的虚拟空间中,成为调用进程的一部分。如果与其它 DLL 之间没有冲突,该文件通常映射到进程虚拟空间的同一地址上。DLL 模块中包含各种导出函数,用于向外界提供服务。DLL 可以有自己的数据段,但没有自己的堆栈,使用与调用它的应用程序相同的堆栈模式;一个 DLL 在内存中只有一个实例;DLL 实现了代码封装性;DLL 的编制与具体的编程语言及编译器无关。在 Win32 环境中,每个进程都复制了自己的读/写全局变量。如果想要与其它进程共享内存,必须使用内存映射文件或者声明一个共享数据段。DLL 模块需要的堆栈内存都是从运行进程的堆栈中分配出来的。Windows 在加载 DLL 模块时将进程函数调用与 DLL 文件的导出函数相匹配。Windows 操作系统对 DLL 的操作仅仅是把 DLL 映射到需要它的进程的虚拟地址空间里去。DLL 函数中的代码所创建的任何对象(包括变量)都归调用它的线程或进程所有。调用方式:1、静态调用方式:由编译系统完成对 DLL 的加载和应用程序结束时 DLL 卸载的编码(如还有其它程序使用该 DLL,则 Windows 对 DLL 的应用记录减1,直到所有相关程序都结束对该 DLL 的使用时才释放它,简单实用,但不够灵活,只能满足一般要求。隐式的调用:需要把产生动态连接库时产生的 .LIB 文件加入到应用程序的工程中,想使用 DLL 中的函数时,只须说明一下。隐式调用不需要调用 LoadLibrary() 和 FreeLibrary()。程序员在建立一个 DLL 文件时,链接程序会自动生成一个与之对应的 LIB 导入文件。该文件包含了每一个 DLL 导出函数的符号名和可选的标识号,但是并不含有实际的代码。LIB 文件作为 DLL 的替代文件被编译到应用程序项目中。当程序员通过静态链接方式编译生成应用程序时,应用程序中的调用函数与 LIB 文件中导出符号相匹配,这些符号或标识号进入到生成的 EXE 文件中。LIB 文件中也包含了对应的 DL L文件名(但不是完全的路径名),链接程序将其存储在 EXE 文件内部。当应用程序运行过程中需要加载 DLL 文件时,Windows 根据这些信息发现并加载 DLL,然后通过符号名或标识号实现对 DLL 函数的动态链接。所有被应用程序调用的 DLL 文件都会在应用程序 EXE 文件加载时被加载在到内存中。可执行程序链接到一个包含 DLL 输出函数信息的输入库文件(.LIB文件)。操作系统在加载使用可执行程序时加载 DLL。可执行程序直接通过函数名调用 DLL 的输出函数,调用方法和程序内部其 它的函数是一样的。

⑦ 自己用C编写的程序生成的exe文件在别的机子怎么运行不了

其实一般在编程序时,都是生成了调试版的程序,就是在那个Debug目录下的可执行文件。运行这调试版的exe文件,都会动态连接 MFC42D.DLL和MSVCRTD.DLL这两个文件,所以你如果将这个文件在其它机器上运行而这台机器没有这两个文件或者缺少一个,系统则会出现: “找不到所需.dll文件-某某.dll”这样的提示。而一般系统都不带有这两个文件,除非是装了vc等。解决方法很简单:1,选择菜单build->Set Active Configuration,然后选择Release, 2,选择菜单project->settings,在General选项卡里第一项选择Use MFC in a static Library,即静态连接其实这就是生成了发布版程序,在Release目录下,可执行文件不会用到那两个讨厌的dll文件,一般到别的机器上都能用,试试吧!

OK,我照做了,写了另一个程序,然后到处找人做实验。结果是正确的。当对方机子上有VC时,我们用DEBUG和动态链接库编的程序是可以用的;否则,就会提示出错,只能用Release和静态链接。因此,要做一个通用的程序,就必须用发布版。

⑧ 为什么c语言编写exe文件放在WINDOWS/system32文件不能运行

这个gff6.exe
100%是木马病毒,建议赶快删除!
金山、卡巴斯基都认为gff6.exe是木马病毒。

⑨ c语言程序生成exe文件无法运行

一般来说,这是因为你在VC中build的方式为debug,这样程序包含了一些debug信息,可以用于检查错误,但不能在VC之外运行。build方式改成release就可以直接运行了。在VC界面上找找就能看到。
stream的话,发生错误行的内容是?
这样是你传了一个NULL参数给文件流,看来还是相对路径问题。
如果用相对路径,VC下的本地路径在exe文件的上一级目录,而exe文件单独运行时就不行了,相对路径的话换绝对路径呢?

⑩ 编写c语言代码是无法执行程序是怎么回事

C语言代码本身是不能被执行的,必须要进行编译后才能产生可执行文件。
C语言编译的过程中会自动产生两个文件,其文件后缀分别是.o和.exe。
.o是编译文件,用于减小更改程序后再编译时的时间。
.exe 是可执行文件,在Windows系统下,只有.exe才是可以执行的程序。
如果在编译后没有产生对应的.exe文件就代表程序代码出现问题,未通过编译。