Используя sleep () с rand (), получаю ошибку в C ++ - PullRequest
1 голос
/ 30 декабря 2011

Я пытаюсь создать игру, в которой вам нужно набрать "компьютер". У меня проблемы с получением эффекта печати вместо того, чтобы вывод автоматически отображался. Если у кого-то есть какие-либо предложения для достижения этого, я открыт для идей, так как я довольно новичок в C ++.

Итак, я пытаюсь получить случайное число для генерации в методе сна, которое показано как:

    Sleep(rand()%1500);

Довольно просто. Может быть, слишком просто, ха-ха. Но я получаю ошибку: «выражение должно иметь арифметический или перечислимый тип».

Моя идея достичь эффекта печатания состоит в том, чтобы зацикливать каждый символ вывода плюс этот метод ожидания до тех пор, пока не останется больше вывода. Это показано как:

    for(int i = 0; i <= output.length(); i++){

    cout << output[i] + Sleep(random);

}

Спасибо за любую помощь !!!

Ответы [ 2 ]

3 голосов
/ 30 декабря 2011
cout << output[i] + Sleep(random);

Это не имеет смысла - Sleep() не имеет (значимого?) Возвращаемого значения, и нет никакого смысла добавлять результат к вашему выводу.

Разбить егона два независимых утверждения:

cout << output[i];
Sleep(random);

и все будет в порядке.

1 голос
/ 30 декабря 2011

Вы не можете напечатать Sleep to cout.То, что вы хотите, это:

for(int i = 0; i <= output.length(); i++){
{
    cout << output[i];
    Sleep(rand()%1500);
}
...