C#程序是如何执行的?

来源:百度知道 编辑:UC知道 时间:2024/09/23 03:53:09
1.C#是即时编译的是吗?那么它是属于解释执行还是编译执行。
2.C#代码是托管的代码,必须运行在netfamework的环境上,那跟即时编译有什么联系,一定要编译成中间语言吗?把C#程序编译成目标程序然后在netframework环境上运行不就行了吗?
请问
如果是这样的话,那么C#程序移植到其他系统之后,中间代码不是还要编译成二进制代码吗?用什么编译器来编译,如果那台电脑没装VS的话。二楼的朋友^_^

1.属于编译执行的,因为他必须编译执行。
2.编译成中间代码是为了可移植,虽然.NET的可移植性很差。

netfamework是个平台,提供了.NET程序运行所需要的基础类库,那么不管你是什么系统,Windows也好,Unix也好,Mac也好,只要有对应的netfamework,那么你写的.net不需要经过修改就可以在这些系统上运行,如果编译成机器码,那么就是具体的某种型号,某种系统的二进制代码,那就无可移植性之说了。

目前.NET的可移植性不高,究其根本原因我认为是微软怕自己的操作系统受到冲击,毕竟操作系统是他的拳头产品。

中间代码不需要编译成二进制代码,.NET Framework直接就能执行中间代码,至于.NET Framework怎么执行中间代码,那个我也不知道啊,哈哈!

1.编译执行,否则就没有中间语言了。
2.如果不编译成中间语言就没有必要.NET环境了。

==================================
中间语言在.NET Framework上运行。.NET Framework是要对应客户的操作系统的。
没装VS不要紧,没装.NET Framework就不行了。

c#是基于面向对象的编程语言,你就应该它的执行过程了啥
你的第二个问题你就应该去问.net研发人员了