Вот моя проблема .... В приведенном ниже коде между char guess[4]
и cin >> guess
мой answer
элемент в индексе 0 исчез. Кто-нибудь знает почему?Случайная потеря данных в массиве C++
while(bullCount != 4)
{
//Create the answer
char answer[4];
for(int loops = 0; loops < 4; loops++)
{
answer[loops] = createAnswerDigit(seed);
}
//Reset bullCount and cowCount from previous loop
bullCount = 0;
cowCount = 0;
cout << "Enter your guess [1000-9999]: ";
//Guess by player
char guess[4];
cout << "Answer[0]: " << answer[0] << "\n"; //Prints "Answer[0]: 4
//Retrieve guess by player
cin >> guess;
cout << "Answer[0]: " << answer[0] << "\n" //Prints "Answer[0]: "
for(int digitLoc = 3; digitLoc >= 0; digitLoc--)
{
//Do check backwards to prevent mistaking bulls for cows
int check = checkGuess(guess[digitLoc], digitLoc, answer);
if(check == cow)
{
cowCount++;
}
else if(check == bull)
{
bullCount++;
}
}
}
что делает createAnswerDigit делать? –
Что вводит 'cin >> guess'? – AndyG
@VerenaHaunschmid Возвращает представление символа случайной цифры (atm возвращает то же самое снова и снова для тестирования). –