如你所知,我们可以使用这样的东西:
string s = L("some\nstr\t");
我的问题是,是否有办法使用文字打印字符串。例如:
string s = "s\nsome\n"
cout<< L(s); // the output printed should be s\nsome\n and not new lines
谢谢。
答案 0 :(得分:1)
是的,
string s = "Here is \\nan \\n example"
cout<< s;
答案 1 :(得分:1)
弗朗索瓦&#39;答案已经很好了,但我想详细说明这里发生的事情...
当您将\n
放入字符串中时,即单个字符。 \
正在说&#34;不要像往常那样对待接下来发生的任何事情,逃避它。&#34;转义n
是换行符,因此\n
是换行符。
因此,如果您想在字符串中使用\
,那么您将如何获得它?通常这被视为转义字符,但我们希望它只是一个常规字符。那我们该怎么做呢?我们逃脱它! \\
将被解释为单个\
字符。
因此,如果您希望打印s\nsome\n
,则需要将字符串构造为"s\\nsome\\n"
。请注意,n
未被转义,转义字符为!