C#中的托管代码与非托管代码
非托管代码
不受CLR控制的应用程序不受管理
不安全代码或非托管代码是使用指针变量的代码块。
unsafe修饰符允许在非托管代码中使用指针。
让我们看一个例子-
示例
static unsafe void Main(string[] args) {
int var = 20;
int* p = &var;
Console.WriteLine("Data is: {0} ", var);
Console.WriteLine("Address is: {0}", (int)p);
Console.ReadKey();
}托管代码
托管代码是由公共语言运行时管理其执行的代码。它获取托管代码并将其编译为机器代码。之后,代码被执行。此处的运行时(即CLR)提供自动内存管理,类型安全性等。
托管代码使用在.NET之上运行的高级语言编写。可以是C#,F#等。使用任何一种语言使用其编译器编译的代码都不会生成机器代码。但是,您将获得由运行时编译和执行的中间语言代码
C/C++代码(称为“非托管代码”)没有该特权,该程序是二进制文件,由操作系统加载到内存中,剩下的就是程序员必须照顾的问题。
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短