2014-02-07 84 views
0

這是一個常數,我使用,它被分成這樣的,因爲我不希望有滾動我的編輯你可以在字符串文字中插入中斷嗎?

const string PROGRAM_DESCRIPTION = "Program will calculate the amount " 
"accumulated every month you save, until you reach your goal."; 

int main() 
{ 
    cout << PROGRAM_DESCRIPTION; 
    return 0; 
} 

在命令提示符目前打印出的

Program will calculate the amount accumulated every month you save,until you re 
ach your goal. 

當這種打印出來我想它打印兩個單獨的行象下面...

Program will calculate the amount accumulated every month you save, 
until you reach your goal. 

我不知道往哪裏放break語句中的字符串這樣我就可以戈將其正確打印出來。

+6

您是否嘗試過使用'\ n'插入換行符? –

回答

8

只需插入\n字符來強制一個新行

const string PROGRAM_DESCRIPTION = "Program will calculate the amount " 
"accumulated every month you save, \nuntil you reach your goal."; 
+0

謝謝你這個作品。我曾嘗試添加/ n,但是我的「n」之後有一個空格,然後使其出現在字符串 – Jessica

+0

中。線索,想象它是Windows操作系統並創建表單應用程序,而不是控制檯。 – ST3

0

添加\n您要行打破的字符串中。

4

您可以在字面對於第一部分的末尾使用\n,像這樣:

const string PROGRAM_DESCRIPTION = "Program will calculate the amount\n" 
"accumulated every month you save, until you reach your goal."; // ^^ 

您不必文字分成幾部分,如果你不希望這樣做的可讀性:

const string PROGRAM_DESCRIPTION = "Program will calculate the amount accumulated every month you save,\nuntil you reach your goal."; 
3

在C++ 11,可以使用原始字符串字面

const char* stuff = 
R"foo(this string 
is for real)foo"; 
std::cout << stuff; 

個輸出:

this string 
is for real 

(我把這個答案在這裏爲迂腐的原因,可使用\ n)

0

只需插入一個換行符「\ n」個你在常量字符串想要的位置,你會做在一個正常的字面字符串:

const string PROGRAM_DESCRIPTION = "Program will calculate the amount\naccumulated every month you save, until you reach your goal."; 

cout << PROGRAM_DESCRIPTION; 

簡單。就像你應該使用字面字符串一樣:

cout << "Program will calculate the amount\naccumulated every month you save, until you reach your goal."; 

對不對?

0

好的答案是好的,但我的提議是使用\r\n換新線。請再閱讀here,這兩個符號應該始終有效(除非您使用的是Atari 8位操作系統)。

還有一些解釋。

  • \n - 換行。這應該將打印指針移動一行較低,但它可能會或可能不會將打印指針設置爲開始行。
  • \r - 回車。這會在行的開始處設置行指針,並且可能會或可能不會更改行。

  • \r\n - CR LF。將打印指針移動到下一行並將其設置在行首。

相關問題