为什么C语言编译器编出的软件,只能在windows下运行??

 我来答
dufenglei908
推荐于2016-02-19 · TA获得超过6372个赞
知道大有可为答主
回答量:1449
采纳率:60%
帮助的人:772万
展开全部
没有这回事。
首先,C语言是编译型语言。同样的代码,使用windows下的编译器产生的可执行文件就只能在windows下运行,但是用linux下的编译器编译出来的可执行文件就可以在linux下面运行。因此跟你所处的环境有关,而跟C语言编译器本质上并没有太大的区别。
举个例子,比如gcc编译器,有windows版本,也有linux版本,用不同的版本编译,就能运行于不同的环境。

然后说一下解释性语言,比如java,所有的java代码都运行于虚拟机jvm上,是靠jvm来解释执行,jvm在这里也就充当了上面编译器的角色(只能说类似)。所有java代码可以直接跨平台执行,因为不同版本的jvm已经有人为我们做好了。
百度网友43c92f6
2013-08-26
知道答主
回答量:28
采纳率:0%
帮助的人:14万
展开全部
你的代码如果移植性好的话,一段代码,在windows下编译后,在windows下运行;拿到linux下,重新编译,就可以在linux下运行,不是说你C语言编译器编出的可执行文件。而是不同平台的编译器。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wudkj
2013-08-26 · TA获得超过122个赞
知道答主
回答量:139
采纳率:0%
帮助的人:55.1万
展开全部
其实我一也不是很专业,在这里发言有mark的意思,等看高人答案。

我理解的是这个就好像是人类和大猩猩一样,同样的挥手,对人来说是友好,但是对大猩猩是骂人(笑话里的)。
不同的系统,对程序代码的解释是不同的,所以会出错吧。
就好像.net程序在没有.net framework库的时候就是在windows下也是打不开的。

等高人。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式