[모던 C++] C++에서 랜덤값 얻기/ rand() 함수 쓰면 안 되는 이유
rand() 함수 사용하면 안 되는 이유 우리가 C언어를 사용할 때, 랜덤한 넘버를 얻기 위해서 종종 다음과 같은 코드를 사용하는 경우를 볼 수 있다. #include #include int main(void) { srand(time(NULL)); int randNum = rand() % 100; return 0; } 위 코드는 0부터 99까지 범위에서 난수를 생성해서 randNum에 저장하는 코드이다. 위 코드는 두 가지 심각한 문제를 갖고 있는데 일단 rand()의 시드를 초기화하는데 time을 사용한 것도 문제고 그보다 더 큰 문제는 rand()를 사용했다는 것 그 자체이다 왜 rand() 함수를 사용한 것이 문제가 되는가. 그전에 간단히 컴퓨터가 어떻게 랜덤 함수를 구현하는지 알아보자. 사실 디지..