Warning: fopen(/www/wwwroot/www.wendadaohang.com/data/md5_content_title/98/98a2baaf3777ff1287d6731ba3d399fd.txt): failed to open stream: No space left on device in /www/wwwroot/www.wendadaohang.com/inc/function.php on line 2468

Warning: flock() expects parameter 1 to be resource, bool given in /www/wwwroot/www.wendadaohang.com/inc/function.php on line 2469

Warning: fclose() expects parameter 1 to be resource, bool given in /www/wwwroot/www.wendadaohang.com/inc/function.php on line 2475
编程语言编写的程序一定要在相应的运行环境下才能运行吗? - 88问答网

编程语言编写的程序一定要在相应的运行环境下才能运行吗?

比方说现在的网络游戏程序,是用C++或JAVA编的吧,那为什么能在我的机子上运行?我又没JDK

现在的网络游戏大多数还是用C++编的,而且通常使用DirectX API,C++程序本身就生成的机器代码,可直接执行,不需要额外的解释器。而使用DirectX API后需要调用DirectX运行时库,这个你机子上都装了。平时有时候游戏要你安装的DirectX就是运行时库。而且安装windows的时候本身就附带了基本的DX运行时库。

PC游戏很少使用Java编写,使用Java编写的程序必须要安装Java虚拟机运行环境才能执行,因为Java程序本身是java的字节码,不是CPU能识别的机器码,所以需要解释器将字节码翻译成机器代码才能运行,这就需要Java虚拟机了。JDK是Java开发工具,用于开发Java程序而不是运行它,但安装JDK的时候通常会帮你装上Java虚拟机。

不管什么语言写的程序运行的时候都不需要开发库,开发库中的你需要的静态代码都放入你的程序中了。
不管是JDK还是用于开发C++程序的开发环境都是用来开发程序的,都不需要在运行成品程序的机器上安装。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-08-23
你应该明确打包这个概念。就是说在你在某一个开发平台上完成了该项目的代码编写部分后,你必须将其编译成exe格式。如果你在项目中还应用的开发平台里面的类库或其他的组件,你还得将exe程序打包。打包的过程就复制了运行环境里面必须的一些东西。
第2个回答  2008-08-23
我想你应该是混淆了编程语言源程序和可执行程序这两个概念
编程语言源程序经特定的编译器(也就是你所说的“相应的运行环境”)编译后形成可执行程序(能在几乎任意机器上运行)本回答被提问者采纳
第3个回答  2008-08-23
编译完后一般用的是exe格式,exe格式的文件是台windows的操作系统都能用
第4个回答  2008-08-23
是的 你虽然没JDK 但是程序自带库 只是不用你去配制
相似回答