Почему в переменной 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 не меняется. Обыкновенное сложение строк без индексации работает, как всегда, хорошо.