Visual Studio 调试器中的 C# 中的格式说明符
你可以使用格式说明符更改在“监视”窗口中显示值所用的格式。 还可在“即时”窗口、“命令”窗口、跟踪点和源窗口中使用格式说明符。 如果将鼠标悬停在这些窗口中的表达式上,结果将采用指定格式显示出现在数据提示中。
若要使用格式说明符,请输入变量表达式,后跟一个逗号和适当的说明符。
设置格式说明符
我们将使用以下示例代码:
{
int my_var1 = 0x0065;
int my_var2 = 0x0066;
int my_var3 = 0x0067;
}
调试期间,将 my_var1
变量添加到“监视”窗口,“调试”>“窗口”>“监视”>“监视 1”。 接下来,右键单击变量,然后选择“十六进制显示”。 现在,“监视”窗口显示值 0x0065。 若要看到表示为十进制整数而不是十六进制整数的此值,请在“名称”列的变量名之后添加十进制格式说明符“, d” 。 “值”列现在显示 101。
可以通过将逗号 (,) 追加到“监视”窗口中的值来查看可用格式说明符列表并从中进行选择。
格式说明符
下表描述了适用于 Visual Studio 调试器的 C# 格式说明符。
说明符 | 格式 | 原始监视值 | 显示 |
---|---|---|---|
ac | 强制计算表达式,这在关闭属性的隐式计算和隐式函数调用时十分有用。 | 消息“用户已关闭隐式函数计算” | <value> |
d | 十进制整数 | 0x0065 | 101 |
dynamic | 使用“动态”视图显示指定对象 | 显示对象的所有成员,包括动态视图 | 仅显示动态视图 |
h | 十六进制整数 | 61541 | 0x0000F065 |
nq | 不带引号的字符串 | "My String" | My String |
nse | 指定行为,而不是格式。 计算带有描述“无副作用”的表达式。 如果表达式无法进行解释,并且只能通过计算(如函数调用)来解析,则会看到错误。 | 不可用 | 不可用 |
隐藏 | 显示所有公共成员和非公共成员 | 显示公共成员 | 显示所有成员 |
raw | 以项在原始项节点中的显示格式来显示项。 只对代理对象有效。 | Dictionary<T> | Dictionary<T> 的原始视图 |
results | 与实现 IEnumerable 或 IEnumerable<T> 的类型的变量一起使用,通常是查询表达式的结果。 仅显示包含查询结果的成员。 | 显示所有成员 | 显示满足查询条件的成员 |