我正在尝试使用Visual Studio 2012的代码分析功能。我刚刚在我现有的项目上运行了它们,发现了一些缓冲区溢出警告(/),其中包含了我自己实现的Knuth的subtractive PRNG(也称为RAN3)。但是,我不能理解为什么会发生这种情况,因为它看起来很好(我看不到任何越界读/写)。所以我对这部分做了一个简短的等价物(如下),但仍然得到了相同的警告,并且找不出它们的原因。 unsigned int k = 1U, seed = 12345U, randomNumbers[55];
for