Me he dado cuenta de que la función estándar de rand() da resultados diferentes en Windows y Linux. Por supuesto que he usado el mismo número de semilla (1234). Aquí hay varios primeros resultados:diferentes resultados de rand() en Windows y Linux
ganar: 4068 213 12761 8758
LIN: 465 566 339 961 126 155 479 142 414 1057886067
Mi aplicación requiere que ambas plataformas producen una salida idéntica. ¿Cuáles son mis opciones? ¿Hay algún buen reemplazo para rand() que cumpla con mis requisitos?
gracias
PS. Utilicé MSVC 2008 en Windows7 y gcc 4.1.2 en CentOS 5.5
¿Por qué necesita números aleatorios para ser idénticos en todas las plataformas? Eso no es muy * aleatorio *, después de todo, ¿qué estás tratando de lograr? –
@EamonNerbonne Escenario posible: aplicación desarrollada bajo linux y cygwin y probada con prueba aleatoria. La semilla se imprime para cada prueba. Si la prueba identifica una condición de error, se puede reproducir el caso de error con la ayuda de la semilla.Si uno quiere depurar el caso de error en linux y cygwin sería muy bueno si 'rand' devolviera la misma secuencia aleatoria bajo linux y cygwin. – Tobias