Welcome

首页 / 软件开发 / C# / C#使用不安全代码

C#使用不安全代码2010-06-25为了保持类型安全,默认情况下,不支持指针运算。不过,通过使用unsafe关键字,可以定义允许使用指针的不安全上下文。

注意:在公共语言运行库(CLR)中,不安全代码是指无法验证的代码。C#中的不安全代码不一定是危险的,只是其安全性无法由CLR进行验证。

下面代码是一段不安全代码,方法中声明了一个int类型的指针,并将该指针自身相加,代码如下:

unsafe static void add(int* p)
{
*p += *p;
}
在Main函数中使用已经定义的不安全代码方法,并将结果输出,代码如下:

unsafe static void Main()
{
int i = 5;
add(&i);
Console.Write(i);
Console.Read();
}
在编译不安全代码时,需要使用“/unsafe”,具体格式如下:

csc /unsafe test.cs

test.cs为包含不安全代码的文件。