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

How to output new line in Visual Studio actions?

我在Visual Studio2015添加了一个断点,用一个动作输出一个字符串到输出Window。最后会有一个自动添加的换行符。问题是,我之前的输出信息(不是断点输出)没有换行。

所以我想在我的字符串的开头添加换行符,以避免它弄乱我之前的消息。我尝试添加 \n,但 \n 输出原样, 没有被转义

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

这里有四件事供您尝试:

  1. 您可以 使用调试器表达式 {"\n",s8b} 生成换行符,它利用了 C++ debugger format specifier s8b (未加引号的 8 位字符串)。

    这是一个包含两行消息的示例 First{"\n",s8b}Second:

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

  2. 就在您当前的断点之前,添加一个 带有非常短的操作消息的附加断点(点或逗号)以获得额外的换行符在你真正的消息之前。

  3. 如果您在 Windows(这很可能,给定 Visual Studio),您可以使用 [=] 向调试器 发送消息56=]API函数OutputDebugString. This is the currently suggested solution to the SO question, "How do I print to the debug output window in a Win32 app?"

  4. 写消息给clog: std::clog << message << std::endl;.

除了来自 stakx 的 与调试 C++ 应用程序的原始问题匹配之外,我想添加一个字符序列,而不是适用于 调试 .NET 应用程序:

{"\n",nq}

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