C++ I';我试图在下划线之间创建空格,这代表一个秘密短语

C++ I';我试图在下划线之间创建空格,这代表一个秘密短语,c++,C++,我当然是个初学者。我正在尝试创建一个简单的短语猜测游戏。所以我随机生成了一个短语。我想设置一个等于随机短语长度的变量,它将改变每个游戏。随着游戏的进行和正确的猜测,我想用正确的猜测来填补分数不足的地方 t_e(此处空格)p_ra_e 这类事情。现在我只是想用空格和下划线来生成“揭示”短语。提前谢谢 string phrase = verbs[random_word1] + ' ' + nouns[random_word2] + ' ' + conjunct[random_conjunct

我当然是个初学者。我正在尝试创建一个简单的短语猜测游戏。所以我随机生成了一个短语。我想设置一个等于随机短语长度的变量,它将改变每个游戏。随着游戏的进行和正确的猜测,我想用正确的猜测来填补分数不足的地方

t_e(此处空格)p_ra_e

这类事情。现在我只是想用空格和下划线来生成“揭示”短语。提前谢谢

    string phrase = verbs[random_word1] + ' ' + nouns[random_word2] + ' ' + conjunct[random_conjunct] + ' ' + result + ' ' +  adjectives[random_word3];

string revealPhrase = "";

for (i=0; i < phrase.length(); i++){
    if (phrase.at[i] == ' ')
        revealPhrase = ' ';
    else    
        revealPhrase = revealPhrase + "_ ";}

cout << revealPhrase << endl;
string短语=动词[随机词1]+''+名词[随机词2]+''+连接词[随机词]+''+结果+''+形容词[随机词3];
字符串revalphrase=“”;
对于(i=0;i
for (int i=0; i < phrase.length(); i++){
    if (phrase[i] == '-')
        revealPhrase += "  "; // assuming you want spaces here
    else    
        revealPhrase += "_ ";
}
for(int i=0;i
试试这样的方法

char c;
string actualPhrase = "the phrase";
string revealPhrase = "__________";
int length = actualPhrase.length();
int curIndex;
while(actualPhrase.compare(revealPhrase) != 0)
{
   cin >> c;
   for(int i=0; i < length; i += 1)
   {
      if(actualPhrase[i] == c)
      {
         revealPhrase[i] = c;
      }
   }
}
charc;
string actualPhrase=“短语”;
字符串revalphrase=“\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu”;
int length=actualPhrase.length();
int-curIndex;
while(实际短语比较(reval短语)!=0)
{
cin>>c;
对于(int i=0;i
你能详细说明一下你在这段代码中没有得到什么。如果你想用空格来填充它,为什么要先用破折号替换?我在上面发布了我的最新代码。我希望它像一个命运之轮的游戏。所以这给了我一条线,上面的奥加很接近。这实际上给了我一行每一个词,这是不坏的。理想情况下,我希望短语中每个单词的每个字母都是空白的。你确定你复制的正确吗?它应该给一个下划线,每个字母后面跟一个空格,每个破折号后面跟两个空格。很抱歉我注意到我在一个你有的地方有。可能就是这样,我不知道。它打印了25行空白