2013-06-25 76 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