【问题标题】:How to display a string backwards on the same line?如何在同一行向后显示字符串?
【发布时间】:2017-10-16 02:45:23
【问题描述】:

我想先说我是编程新手,但我正在做一个小项目,除了这个小部分之外,所有的东西都搞定了,我在网上找不到,也想不通无论出于何种原因。我需要向后显示一个字符串,但是按照我的编码方式,它将每个字符显示在一个新行上。我想在同一行显示它。如果我在末尾添加一个 endl,它会显示我不想要的“按任意键继续...”消息。

if (sel == 4)
        {
            for (a = sent.length() - 1; a >= 0; a--)
            {
                cout << sent.at(a) << endl;
            }
            break;
        }

所以本质上,用户输入一个字符串,我将其存储为“sent”,然后他们被要求输入一个存储为“sel”1 到 4 的选项,每个选项都与字符串不同(大写,小写等),但 4 会向后显示它,它现在可以工作,但是当它显示字符串时,会出现消息“按任意键继续...”(应该如此)我只是想不出解决办法.

【问题讨论】:

  • 您知道endl 代表“行尾”,对吧?您在每个字符之后明确发出它,然后惊讶于每个字符都在新行上。
  • 我确实做到了,正如我在原帖中所说,““按任意键继续...”出现(应该如此)我只是想不出解决办法。”
  • 您考虑过要求换行吗?
  • “按任意键继续...”与什么有什么关系?设为cout &lt;&lt; sent.at(a); - 在每个字符后停止发出换行符,这样您就不会将每个字符都放在新行上。
  • 您是否尝试过在 VS 之外的命令行上运行 exe?

标签: c++ visual-c++


【解决方案1】:

我想我知道你的意思,这很简单。只需这样做:

        if (sel == 4) 
        {
            for (a = sent.length() - 1; a >= 0; a--)
            {
                cout << sent.at(a);
            }
            cout<<endl;   
            break;
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-11
    • 1970-01-01
    • 2013-11-02
    • 1970-01-01
    • 1970-01-01
    • 2017-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多