java最大的优势就是跨平台,因为java实在JVM,也就是JDK安装后形成的java虚拟机中运行的,所以,只要你的电脑或者说是操作系统只要有jvm就可以运行java程序,比如你在window下面编译的WEB项目打成war包,你发布的环境可能是linux的,这都是可以通用的,有时间你可以自己安装一个linux虚拟机在电脑上,自己尝试一下,发布程序这些操作,慢慢就懂了。
㈡ 问下现在比较流行的跨平台编程语言都有哪些
实现的机制不同。
JAVA是基于JVM虚拟机的,JAVA代码被解释为字节码提供给JVM运行,JVM再根据字节码调用系统接口,所以它的跨平台要点是实现能运行在各个平台上的JVM。
其他的跨平台的高级语言是通过编译器实现的。
例如:DELPHI7的源码中有针对MS和LINUX平台的条件编译,在预编译的时候根据具体平台选择编译源代码的一部分。所以在LINUX平台下编译DELPHI源码就会得到KYLIX,在MS平台下编译就得到DELPHI。
上边说的是OS层面的跨平台,还有CPU体系的跨平台
比如,GCC支持编译生成多种处理器下的二进制代码。在编译的时候通过选择相应的处理器类型和恰当的库文件就可以生成不同体系下的比如X86,IA64,ARM或MIPS等的可执行文件
㈢ 如何在 Windows 跨平台编译 Mac 程序
你要在mac里安装go的编译环境
然后 把要编译的文件复制过去
话说go好像支持跨平台编译
安装go语言 之前貌似要先安装gcc 还要设置环境变量
㈣ 哪个C++编译器是跨平台的
C++编译器没有跨平台, 因为编译生成的可执行程序或者库文件是和操作系统相关的。 windows下一般是使用Visual Studio编译器; Linux下用gcc编译。
不含调用系统API的C/C++代码 才可以在多平台下编译
㈤ 怎么跨平台编译
你可是试试将图片、视频等资源放在qrc资源文件中,使用资源路径进行调用,这样生成的可执行文件就不需要依赖外部文件系统资源了。
㈥ 请问下面的程序,编译之后,是否可以【跨平台运行】呢
若在A平台编译则理论上不可拿到B平台运行,除非在B平台重新编译!典型例子就是Windows和Linux/Unix,但是这段程序无需修改就可以跨平台编译。
㈦ C语言是如何编译与组建的,跨平台性
科普一下,C最早是出现在Unix下的,Windows那都是后话了,C出现的时候Windows还没开发出来呢。
C有个比较特别的称呼,叫中级语言,因为它有高级语言的特性又能跟底层硬件很好的交互所以才有这么个说法。DOS时代在C里面嵌上一段汇编直接从并口读个数上来那是很流行的,现在没见谁在VC里面这么干吧。Windows也不让啊。想访问硬件怎么也得通过驱动。
说远了,C在多种平台下可以实现代码级的共享,跨平台就需要重新编译了。
但是,我也见过有的软件是可以在多种平台上运行了,可能有什么特别的技术,可以先识别一下操作系统,再运行相应的代码。这个应该是在编译的时候有特殊的技巧。
C编译、连接器网上有现成的代码,一般不是很专业的技术人员没有去研究它。我一直把玩编译原理的视为天人,有能力把编译原理那本书看完的就很不容易了,再要能领会其中精要那就成才了,能把龙书虎书鲸书都搞明白的那就是一流专家了。
说白了C语言是如何编译与组建的,大道理谁都知道,具体怎么实现的,没几个懂的。所以对您的提问我只能坐这等着高手了!
㈧ c语言为什么能跨平台或是如何跨平台的
c语言能跨平台是因为各个平台有相应的c编译器,只要源代码相同,编译器编译出来的二进制文件就会实现相同的功能,但是这些二进制文件本身是不一样的
exe就是2进制的,但不完全是原来程序的代码,还包括了windows系统的一些代码
科普一下,C最早是出现在Unix下的,Windows那都是后话了,C出现的时候Windows还没开发出来呢。
C有个比较特别的称呼,叫中级语言,因为它有高级语言的特性又能跟底层硬件很好的交互所以才有这么个说法。DOS时代在C里面嵌上一段汇编直接从并口读个数上来那是很流行的,现在没见谁在VC里面这么干吧。Windows也不让啊。想访问硬件怎么也得通过驱动。
说远了,C在多种平台下可以实现代码级的共享,跨平台就需要重新编译了。
但是,我也见过有的软件是可以在多种平台上运行了,可能有什么特别的技术,可以先识别一下操作系统,再运行相应的代码。这个应该是在编译的时候有特殊的技巧。
C编译、连接器网上有现成的代码,一般不是很专业的技术人员没有去研究它。我一直把玩编译原理的视为天人,有能力把编译原理那本书看完的就很不容易了,再要能领会其中精要那就成才了,能把龙书虎书鲸书都搞明白的那就是一流专家了。
㈨ Java语言是如何做到可移植性强、跨平台、“一次编译到处运行”的呢
因为java代码是运行在JVM上的,不同的平台有不同的JVM,如Windows和Mac上的运行同一款游戏,他们的实现方式肯定不一样,但你都能读取游戏的存档文件。你不需要知道JVM在不同平台的实现方式,但他们解析java的class文件是一样的逻辑,就是这样java实现跨平台的。
㈩ 为什么说c语言是跨平台语言,不就是编译器吗
C语言---是标准,定义了一些条条框框,文字上的东西如C89,C99如ISO/IEC
C99
编译器是根据这些条条框框来做的,不能违反(但也不是那么特别死要求的),对于它来说,标准就好像是法律。
说到跨平台,并不是讲每一个WIN下的可编译正确运行的C代码,就能100%放到LINUX或*bsd下运行的,据我的一点经验,写代码人是否按照标准规范写的,用的非标准库函数是否在WIN及UNIX平台下都能正常,都有限制的