编译器和解释器。

假设你的程序有两种源代码,一种是C语言写的,一种是java写的,现在要发布到这几个平台上:

1、Windows 7/xp/vista...

2、Linux RedHat/Fedora/Unbutu...

3、Symbian S60/S50(手机)

 

那么源程序如果是C语言的,需要找下面的工具:

1、VC60/VS2008,负责编译生成VISTA/XP/WIN7用的.exe文件

2、G++,负责编译生成Linux用的可执行程序

3、Symbian用的C++编译器,不说也罢

 

如果源程序是JAVA语言的,那么需要做的仅仅是用javac编译、jar打包,然后:

1、确保目标WIN7/XP/VISTA安装了java虚拟机

2、确保目标LINUX安装了java虚拟机

3、确保目标手机Symbian系统已安装了支持同版本的java虚拟机

 

看明白没有?C语言编译器是直接把源程序一步翻译为目标计算机(16位,32位,64位)的指定芯片(X86或ALPHA PPC,RISC)、指定操作系统(WINDOWS,DOS,LINUX,SYMBIAN)用的特定可执行程序目标码,

 

而JAVA编译器是把程序翻译为中间码,由虚拟机将中间码解释为最终的指定芯片、指定操作系统的可执行程序目标码

 

严格来说,C和C++、JAVA都是跨平台的,但C#肯定不是,至少目前还没有人在LINUX上做C#的实现。

 

不同的是,C和C++是通过不同平台上的不同编译器实现跨平台

JAVA是通过不同平台的不同虚拟机实现跨平台








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值