debugging 调试多维数组C#

dwthyt8l  于 2023-08-06  发布在  C#
关注(0)|答案(2)|浏览(120)

在调试模式下,是否有方法将矩阵显示为表格?我认为VS 2019如何显示它与矩阵如何变化无关。
100d1x

的字符串

vxbzzdmp

vxbzzdmp1#

您可以将简单的extension method添加到正在调试的项目中:

public static class DebugExtensions
{
    public static string Test2D(this Array source, int pad = 10)
    {
        var result = "";
        for (int i = source.GetLowerBound(0); i <= source.GetUpperBound(0); i++)
        {
            for (int j = source.GetLowerBound(1); j <= source.GetUpperBound(1); j++)
                result += source.GetValue(i, j).ToString().PadLeft(pad);
            result += "\n";
        }
        return result;
    }
}

字符串
这个方法是遍历二维数组,将每个数组项添加到多行字符串中。
调试时,您可以在Watch窗口中使用它。打开Watch窗口,键入新表达式,单击放大镜图标并选择“文本可视化工具”:


的数据

nwo49xxi

nwo49xxi2#

Sinatr的回答效果很好。您也可以以稍微不同的方式使用它。
调试时,在数组声明后设置断点,然后转到“即时窗口”。在即时窗口中,键入Debug.WriteLine(myArray.Test2D()),它将立即显示输出。
您也可以将return result;替换为Debug.WriteLine(result);,并将返回类型更改为void,这样就不必编写Debug.WriteLine()

相关问题