生成一个包含转义引号的字符串

Making a string that contains an escaped quote

本文关键字:转义 字符串 包含 一个      更新时间:2023-10-16

我需要制作一个字符串,如果输入std::cout,它将准确地将"""输出到终端我有麻烦围绕如何做到这一点我的头(c++)

只需在每个需要转义的字符(在您的示例中,是所有四个字符)前面加一个反斜杠。例如,这对我很有效:

std::cout << "Testing: "\""" << std::endl;

输出:测试:""

显然(我刚刚了解到这一点),c++ 11提供了其他(可能更好的)使用字符串字面量的工具。上面在单个字符前面加上反斜杠的方法描述了更老式的处理方法。

std::string foobar(""foobar"");
std::cout << foobar << std::endl;  // Prints "foobar" (with quotes)

不确定这在c++中是否有效,但在python中有一种叫做原始字符串的东西,它忽略转义之类的。它看起来像:

r"some stuffnot a new line"

或像:

R"some stuffnot a new line"

希望有帮助!