不让价值超过另一个的最快方法 - C++

het*_*lek 0 c++ numbers

我目前正在尝试找到一个不会让值超过某个值的解决方案,在本例中为0x1000(4096).这是一个简单的解决方案,但关键在于速度.

int someVal = rand();
for(int i = 0; i < 10000; i++)
{
    if(someVal > 0x1000)
        someVal = 0x1000;
    cout << someVal;
    someVal = rand();
}
Run Code Online (Sandbox Code Playgroud)

这太慢了,除非当然没有别的方法可以做到.感谢任何帮助,Hetelek.

Kar*_*ath 5

不确定你想要完成什么.这会解决您的问题吗?

someVal = rand() % 0x1001;
Run Code Online (Sandbox Code Playgroud)