【问题标题】:Visual Studio debugger - Displaying integer values in BinaryVisual Studio 调试器 - 以二进制显示整数值
【发布时间】:2018-06-02 22:06:50
【问题描述】:

我使用的是 Visual Studio 2017,我需要查看整数变量的二进制表示。

如何通过 Visual Studio 调试器实现这一点?

【问题讨论】:

  • 它已经以二进制显示,十六进制是一个很好的紧凑表示。 0 = 0000, 1 = 0001, ... E = 1110, F = 1111。所以这是 01010000000000000000000000000000。或者将值复制粘贴到计算器中,切换到程序员模式应该有足够的数字来说服你需要二进制符号比你想象的要少很多。

标签: visual-studio debugging binary integer


【解决方案1】:

在手表中输入“var, b”,例如,

【讨论】:

  • 好像不行(VisualStudio 2019 Professional)
  • @GiacomoPirinoli 奇怪,它在 Visual Studio Community 2019 中运行良好。
【解决方案2】:

根据 Visual Studio 调试器documentation

您可以使用格式说明符更改值在 Watch、Autos 和 Locals 窗口中的显示格式。

关于调试引擎更新兼容性的注意事项也值得注意:

当 Visual Studio 本机调试器更改为新的调试引擎时,添加了一些新的格式说明符并删除了一些旧的。当您使用 C++/CLI 进行互操作(混合本机和托管)调试时,仍会使用旧的调试器。

虽然它提到它可以应用于AutosLocals 窗口,但由于无法在这些窗口中编辑变量名称,因此不清楚它是如何完成的。

<variable>, <format> 语法可以在WatchImmediate 窗口中使用,如下所示:

这是format specifiers完整列表的直接链接。

【讨论】:

    【解决方案3】:

    右键单击它会显示一个菜单列表的值,但它只给了我们十六进制显示的选项。 要在监视窗口中显示二进制值的变量,我建议你编写函数来隐藏它:

    我的代码中的函数是:

    public static string ToBinaryString(uint num)
        {
            return Convert.ToString(num, 2).PadLeft(32, '0');
        }
    

    【讨论】:

    • @Stepan Ivanenko,请您与我们分享您身边的最新信息吗?
    猜你喜欢
    • 2011-03-22
    • 2011-02-18
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多