C#指针操作

hez2010 hez2010 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
求问大家这个输出为什么不是1~100,而是一段一段的中间还夹杂一堆野值。
using System;
using System.Runtime.InteropServices;

namespace test
{
class Program
{
static unsafe void Main(string[] args)
{
int[][] p = new int[10][];
var r = 0;
for (int i = 0; i < 10; i++)
{
p[i] = new int[10];
fixed (int* j = p[i])
{
for (int x = 0; x < 10; x++)
{
*(j + x) = ++r;
}
}
}
fixed (int* i = p[0])
{
for (int j = 0; j < 10 * 10; j++)
{
Console.Write($"{*(i + j)},");
}
}
return;
}
}
}


实际上输出是:
1,2,3,4,5,6,7,8,9,10,0,0,-2086078320,32766,10,0,11,12,13,14,15,16,17,18,19,20,0,0,-2086078320,32766,10,0,21,22,23,24,25,26,27,28,29,30,0,0,-2086078320,32766,10,0,31,32,33,34,35,36,37,38,39,40,0,0,-2086078320,32766,10,0,41,42,43,44,45,46,47,48,49,50,0,0,-2086078320,32766,10,0,51,52,53,54,55,56,57,58,59,60,0,0,-2086078320,32766,10,0,61,62,63,64,
...全文

相关推荐

C#操作picturebox实现图片的放大和缩小以及改变鼠标指针形状

在C#编程环境中,我们经常使用PictureBox控件来显示图像。这个控件允许开发者进行一系列交互操作,如图片的放大、缩小以及改变鼠标指针形状等。

半度一梅

C#中的指针类型与内存操作详解

本章深入探讨了C#语言中的指针类型和不安全代码上下文中的内存操作。内容涵盖了指针类型的概念、指针与垃圾回收器的关系、指针类型和引用类型的混合规则、以及如何在不安全上下文中使用指针。此外,还包括了不同指针类型之间的转换规则、指针在表达式中的使用、以及如何通过指针进行内存操作如指针算术和指针比较。

Kingston Chang

C#游戏辅助helper类[内存多级指针读写 进程操作]_内存多级指针读写进程操作_C#游戏辅助helper类_读写多级指针_源

例如,一个角色的生命值可能存储在一个复杂的内存布局中,通过多个指针层次才能到达。C#本身不直接支持指针操作,但通过 unsafe 代码块和 Marshal 类可以实现。

耿云鹏

C#游戏辅助helper类[内存操作内存多级指针读写 进程操作]

二、内存操作基础1. IntPtr:C#中表示无符号整型指针的类型,用于内存操作。2.

a572560159

C#中使用不安全代码(使用指针的代码)

**处理磁盘上的现有结构**:在读取或写入磁盘上的二进制文件时,可能需要直接操作字节流,这时可以使用指针提高效率。2.

zhangxiameng
评论 5
收藏 已收藏
分享
返回顶部
hez2010
C# 111,129 成员 642,538 内容