是的,可以在C#中获取存储的原始指针.我建议您阅读C#规范的第18章,其中详细讨论了该主题,而不是试图在此解释所有内容.
但是,如果您要做的是了解各种不同的浮点类型如何存储值,则比在调试器中查看它们更容易.这些都是记录良好的格式; 您可以在维基百科或msdn中查找它们,并阅读它们如何在内存中布局.
Decimal值的二进制表示由1位符号,96位整数和用于划分96位整数的比例因子组成,并指定它的小数部分.缩放因子隐含地为数字10,增加到范围从0到28的指数.
有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/system.decimal.aspx.
double的二进制表示是一个符号位,11个指数位表示从-1022到+1023的指数,以及52位尾数,它们被解释为"1".接着是52位.
请参阅http://en.wikipedia.org/wiki/Double_precision或我关于浮点问题的系列文章:http://blogs.msdn.com/ericlippert/archive/tags/Floating+Point+Arithmetic/default.aspx
浮点数与double相同,只有一半大小:一个符号位,8个指数位,23个尾数位.有关详细信息,请参见http://en.wikipedia.org/wiki/Single_precision_floating-point_format.