Привет! Есть у меня функция:
char generate_asterisk_or_space() {
srand(static_cast<int>(time(0)));
int num = rand() % 2;
switch (num) {
case 0:
return '_';
case 1:
return '*';
default:
return '_';
}
}
Суть её в том, чтобы просто вернуть * или _. С помощью неё я формирую массив, но! Она выдаёт при обычном запуске совершенно одинаковые символы... Упс!
Ещё одно но, заключается в том, что если я дебажу код пошагово, всё работает как и ожидалось - формируется случайный набор символов. Пробовал некоторые штучки с задержкой времени и передачей разных параметров в srand() - не помогло.
В чём же причина такого непонятного поведения?