C#中对指针操作报错解决方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中对指针操作报错解决方法相关的知识,希望对你有一定的参考价值。
(C#中实际不存在指针,这里是仿C语言中指针操作进行说明)
1.错误1 “指针和固定大小缓冲区只能在不安全的上下文中使用”
解决方法:在方法前加上unsafe关键字
2.错误2 “不安全代码只会在使用 /unsafe 编译的情况下出现”
解决方法:右键选中资源管理器中项目文件--属性--生成--勾选"允许不安全代码复选框"!
事例代码,取变量a的内存地址并输出:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { unsafe static void Main(string[] args) { int a = 100; //声明变量a int* p = &a; //声明指针变量p,取变量a的内存地址赋值给变量p string c = Convert.ToString((int)p, 16); //将指针变量p转换为十六进制,string类型变量c Console.WriteLine(c); //输出c,即变量a的内存地址 Console.ReadLine(); } } }
以上是关于C#中对指针操作报错解决方法的主要内容,如果未能解决你的问题,请参考以下文章