如何在Visual Studio操作中输出换行?

zhm*_*zhm 4 c++ breakpoints visual-studio visual-studio-2015

我在Visual Studio 2015中添加了一个断点,并带有将字符串输出Output Window的操作。最后会有一个自动添加的换行符。问题是,我以前的输出消息(断点未输出)没有换行符。

因此,我想在字符串的开头添加新的换行符,以避免它与我之前的消息混淆。我试图添加\n,但是\n输出保持原样,没有被逃脱

如何在断点动作中添加换行符?

在此处输入图片说明

sta*_*ica 6

您可以尝试以下四件事:

  1. 您可以使用调试器表达式产生换行符,该表达式{"\n",s8b}使用C ++调试器格式说明符 s8b(未引号的8位字符串)。

    这是带有两行消息的示例First{"\n",s8b}Second

    调试器跟踪点消息中的换行演示

    (除此之外,我不知道任何其他方式在消息中包含换行符。虽然办法进入一个多行信息(通过使用数字键盘输入换行符Unicode代码点),Visual Studio将只需丢弃输入的第一个文本行以外的所有内容。)

  2. 在当前断点之前,添加带有非常短的操作消息(点或逗号)的附加断点,以便在实际消息之前获得附加的换行符。

  3. 如果您使用的是Windows(在给定的Visual Studio中可能是Windows),则可以使用Windows API函数OutputDebugString将消息发送到调试器。这是当前针对SO问题“如何在Win32应用程序中打印到调试输出窗口?”的解决方案。

  4. 写一条消息clogstd::clog << message << std::endl;


Cod*_*Fox 5

除了stakx 与调试 C++ 应用程序的原始问题相匹配的答案之外,我想添加一个字符序列,用于调试 .NET 应用程序

{"\n",nq}
Run Code Online (Sandbox Code Playgroud)

否则 C++ 序列将导致此错误消息: 's8b' is not a valid format specifier