2013-06-25 74 views
0
for(int i = 4 * scale; i > 0; i--) { 
    x = -1 * i + 6; 
    c = string(x, '/\\'); // Why Won't you work! It only prints the "\" no "/" 
    cout << "\\_" << c << "/\\" << c << "_/" << endl; 
} 

上面是我的代碼的一部分。我的問題是爲什麼它只打印\符號並忽略/ one。這將不勝感激,如果有人能夠回答這個問題,如果你需要更多信息,我可能已經忘記了在這個崗位只留下發表評論,我將它添加到後C++字符串函數只返回某些字符

+6

你確定你不是故意使用'「'而不是'''? –

回答

3

你不能有一個以上的字符常量中的字符。

您正在使用的編譯器似乎把兩個字符常量爲兩個字節的整數,其中的高字節字符/和低字節是字符\。當你將它分配給char時,高位字節會丟失,就像正常的int到char分配一樣。這就是爲什麼你只能得到最後一個字符。

+0

'在字符constant.'多個字符,聽起來像是矛盾給我 – Abhijit