空引用基本上是C#中的全零指针吗?

Yel*_*yev 5 .net c# memory

.NET中的所有对象引用基本上都是32位或64位指针.
我很好奇如何null在记忆中表现出来.它实际上是32或64个零吗?根据规格,是否保证如此?

我在MSDN或C#语言规范上找不到答案.C语言
也有类似的问题,但C#呢?

小智 3

我在 MSDN 或 C# 语言规范上找不到答案。

因为这并不重要。由于您永远无法使用指针 - 这是一个实现细节。

您可以在https://github.com/dotnet/coreclr检查 CLR 源代码

这就是说-我认为它全是0,因为当将其加载到寄存器中时,应该有(至少在我学习汇编程序时)一个特殊的标志,表明该值为空,因此检查速度非常快。