c#教程https://www.xin3721.com/eschool/CSharpxin3721/
1. 使用unsafe
C# 支持 unsafe 上下文,你可在其中编写不可验证的代码。 在 unsafe
上下文中,代码可使用指针、分配和释放内存块,以及使用函数指针调用方法。 C# 中的不安全代码不一定是危险的,它只是其安全性CLR不可验证
unsafe
{
//代码块
}
2. 修改VS的编译器警告设置
项目-》属性》不安全代码
3.指针执行的运算符和语句
运算符/语句 | 使用 |
---|---|
* | 执行指针间接寻址。 |
-> | 通过指针访问结构的成员。 |
[] | 为指针建立索引。 |
& | 获取变量的地址。 |
++ 和 -- | 递增和递减指针。 |
+ 和 - | 执行指针算法。 |
== 、!= 、< 、> 、<= 和 >= | 比较指针。 |
stackalloc | 在堆栈上分配内存。 |
fixed 语句 | 临时固定变量以便找到其地址。 |
4. 简单使用
unsafe
{
int a = 1;
int* b = &a;//取a变量的地址
int c = a;//取a变量的值
a = 3;//修改a变量的值
Console.WriteLine("b:"+*b);//输出b指指针向的值
Console.WriteLine("c:" + c);//输出c的值
}
5. 执行结果