在用c ++编写字符串的过程中按“Enter”键

时间:2011-05-26 08:52:09

标签: c++ string newline


我想写一个字符串并按下“Enter”,同时继续写这个字符串,而不必关闭“” 例如,我想写下以下一行:

string drawing = "\\n\\n" +  
"W     W      W        " +  
"\\nW        W  W     W  "  +  
"\\n              '.  W  ";  

但是当我试图这样做时,编译器会抱怨:

error: invalid operands of types ‘const char [5]’ and ‘const char [23]’
to binary ‘operator+’

有没有一种很好的方法可以在不连接字符串的情况下输入新行(例如,在python中输入'\')?

感谢。

3 个答案:

答案 0 :(得分:5)

不用“+”尝试。

string drawing = "\n\n"
"W W W "
"\nW W W W "
"\n '. W ";

答案 1 :(得分:3)

使用反斜杠结束字符串:

std::string drawing = "\n\n\
W W W \
\nW W W W \
\n '. W ";

答案 2 :(得分:1)

在C ++中,当你有两个或多个仅由空格分隔的字符串文字时,它们会被连接起来。所以你可以使用

string drawing = "\n\n"
"W W W "
"\nW W W W "
"\n '. W ";