Je suis en train de générer des nombres aléatoires mais avec cette graineUtiliser `rdtsc`: erreur C2065
int rdtsc()
{
__asm__ __volatile__("rdtsc");
}
Mais quand je tente de compiler j'obtenir cette erreur:
error C2065: '__asm__' : identificador no declarado
error C2146: error de sintaxis : falta ';' delante del identificador '__volatile__'
Que dois-je devoir faire? Existe-t-il un autre moyen de générer de vrais nombres aléatoires plutôt que via time(null)
?
Je vous attends vous essayez d'utiliser l'assembleur en ligne dans une version x64, que Visual Studio ne prend pas en charge (pour une raison inconnue). Notez que vous ne pouvez pas générer de "vrais" nombres aléatoires (sans support matériel) - vous ne pouvez générer que des nombres * pseudo-aléatoires *. –
Utilisez random_device ou recherchez rand_s sur msdn.microsoft.com. – user515430
C'est la syntaxe gcc. Si vous utilisez visual studio, alors c'est '' __asm rdtsc; '' 0asm \ rdtsc; ' –