Почему в переменной string заменяющий символ при result += p1[0] + p2[0]; codewars

Задача на code wars Rock Paper Scissors!

Код

#include <string>

std::string rps(const std::string& p1, const std::string& p2)
{
  using namespace std;
  string result;
  result += p1[0] + p2[0];
  if(result == "pr" or result == "rs" or result == "sp")
  {
    return "Player 1 won!";
  }
  else if(result == "rp" or result == "sr" or result == "ps")
  {
    return "Player 2 won!";
  }
  else if(result == "pp" or result == "rr" or result == "ss")
  {
    return "Draw!";
  }
  else 
  {
    return result;
  }
}

В output`e отображает

Expected: equal to "Player 1 won!"
Actual: "�"

От значения индекса output не меняется. Обыкновенное сложение строк без индексации работает, как всегда, хорошо.


Ответы (0 шт):