当一个代码块使用 unsafe 修饰符标记时,C# 允许在函数中使用指针变量。不安全代码或非托管代码是指使用了指针变量的代码块。
下面的实例说明了不安全代码中的指针的定义与调用:
static unsafe void Main(string[] args) { int var = 20; int* p = &var; Console.WriteLine("Dtat is:{0}", var); Console.WriteLine("Address is:{0}", (int)p); Console.ReadKey(); }
但是如果没有打开/unsafe编译情况,编译器会报错;
这是博主亲自遇到的问题,在百度了一圈后找到了解决方法:http://jingyan.baidu.com/article/afd8f4de55e99c34e286e995.html