我想看看C#数组是如何放置在计算机内存中的。
我想看到的主要是两列,其中地址第二,数组元素。有可能吗?
我想从1D数组开始,但后来我想观察多维数组是如何奠定的。
问题
如何通过VisualStudio查看?
答案 0 :(得分:14)
您可以使用Visual Studio调试器查看阵列布局。一个简单的例子:
static void Main(string[] args) {
int[] arr = { 1, 2, 3 };
Console.ReadLine(); // Breakpoint here
}
使用Project + Properties,Build选项卡,Platform target = x86。在指示的行上设置断点,按F5,当它命中时使用Debug + Windows + Memory + Memory 1.在地址框中键入arr
。右键单击窗口并选择" 4字节整数"。看起来像这样:
第一个单词是"类型句柄",它的值是随机的,只是忽略它。你可以毫无疑问地猜测其余部分,你会看到数组长度和数组元素。
答案 1 :(得分:0)
您可以将WinDbg与sos或psscor扩展名一起使用。