我不确定为什么我不能在这里获取变量的diff值,帮助!

int main()
{
    srand(time(NULL));
    srand48(time(NULL));
    Packet* firstPacket = new Packet();
    firstPacket->packetSize =  randSize();
    firstPacket->dest = randDest();
    firstPacket->arrivalTime = myExp(lamb);
    Host[firstPacket->dest].Frame.push_back(firstPacket);   // adding first packet
    Host[firstPacket->dest].numOfPack++;
    calcFrameSize(Host[firstPacket->dest]);
    cout << Host[token].frameTVTime << " " << Host[token].frameSize
                    << " " << token << " " << curTime << endl;
}

最佳答案

您的陈述是:

srand(time(NULL));
srand48(time(NULL));


致电给您:

inline float time(int size) { return (10.0*(float)size/12500); }


而不是系统时间?

那可以解释为什么您没有获得随机数。

如前所述,time()对于该函数来说是一个不好的名字。

关于c++ - C++未随机化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/913459/

10-11 22:49
查看更多