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;
}

以上是我的一段代码。我的问题是为什么它只打印 \ 符号而忽略 / 。如果有人能回答这个问题,如果您需要更多我可能忘记在这篇文章中留下的信息,我们将不胜感激,只需发表评论,我会将其添加到帖子中

4

1 回答 1

3

一个字符常量中不能有多个字符。

您正在使用的编译器似乎将两个字符的常量视为一个两个字节的整数,其中高字节是字符 /,低字节是字符 \。当您将其分配给 char 时,较高的字节会丢失,就像在正常的 int-to-char 分配中一样。这就是为什么你只得到最后一个字符的原因。

于 2013-06-25T07:10:23.290 回答