草庐IT

rand_number

全部标签

c++ - rand() 在编译时生成相同的数字

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:What'stheRightWaytousetherand()FunctioninC++?我一直在学习如何使用rand()函数,并且我用C++编写了一个小型猜谜游戏,如下所示,但问题是,无论我编译程序多少次,生成的数字都是相同的->41#include#include#includeusingnamespacestd;intmain(){intx=rand()%100;inty=0;cout>y;while(y!=x){if(y>x){cout>y;}if(y>y;}if(y==x){cout我还尝试更改ra

c++ - Windows 和 Linux 上不同的 rand() 结果

我注意到,标准的rand()函数在Windows和Linux上给出了不同的结果。当然,我使用了相同的种子编号(1234)。以下是几个初步结果:中奖:4068213127618758林:4791424144655663399611261551057886067我的应用程序要求两个平台产生相同的输出。我有哪些选择?rand()有什么好的替代品可以满足我的要求吗?谢谢附言。我在Windows7上使用MSVC2008,在CentOS5.5上使用gcc4.1.2 最佳答案 Boost有一个widerangeofRNGs,大概具有跨平台的可重现

c++ - 提升元组 : increasing maximum number of elements

boosttupledocumentation说:Thecurrentversionsupportstupleswith0-10elements.Ifnecessary,theupperlimitcanbeincreasedupto,say,afewdozenelements.但是,我找不到它说明如何执行此操作的位置。我希望元组具有BOOST_MPL_LIMIT_VECTOR_SIZE元素(默认为20)。这是因为我在mpl::vectors和boost::tuples之间进行映射,并且希望所有容器都具有相同数量的元素。 最佳答案 元

c++ - dumpbin 导出输出中的@number 是什么

在带有/EXPORTS或/IMPORTS的C++.DLL(或IMPLIB.LIB文件)上使用DUMPBIN我在输出中看到如下语法:Exportsordinalname_CloseConduit@4_ConduitPort_GetConduitVersion@4_GetStatusConduit@8_GetTimeout@0_OpenConduit@4我在任何地方都找不到@n名称的定义。我终于得出结论,它是参数数据的字节数,但根据几个例子的推断,这让我有点紧张。任何人都可以指出一个引用,或以任何权威的方式说出这里的数字是什么意思吗? 最佳答案

windows - Windows 上的 mllr_solve 'Error reading byte order magic number'

我正在学习自适应默认声学模型教程,但在运行mllr_solve时遇到错误。INFO:main.c(382):--1.Readinputmean,(var)andaccumulation.ERROR:"pio.c",line434:fread()failed;retrying...:NoerrorERROR:"swap.c",line79:errorwhilereadingbo_magicERROR:"s3io.c",line177:ErrorreadingbyteordermagicnumberERROR:"s3io.c",line265:Errorreadingheaderforen

operator-overloading - 为 "Number Classes"重载 + 和 += 运算符

我想为封装简单的类创建扩展函数Numbers。例如DoubleProperty.我遇到了问题,我无法重载+和+=同时运算符(operator)。我不想创建通过以下测试的行为:classDoublePropertyTest{lateinitvardoubleProperty:DoubleProperty@Beforefuninitialize(){doubleProperty=SimpleDoubleProperty(0.1)}@Testfunplus(){valsomeProperty=doubleProperty+1.5assertEquals(someProperty.value,

operator-overloading - 为 "Number Classes"重载 + 和 += 运算符

我想为封装简单的类创建扩展函数Numbers。例如DoubleProperty.我遇到了问题,我无法重载+和+=同时运算符(operator)。我不想创建通过以下测试的行为:classDoublePropertyTest{lateinitvardoubleProperty:DoubleProperty@Beforefuninitialize(){doubleProperty=SimpleDoubleProperty(0.1)}@Testfunplus(){valsomeProperty=doubleProperty+1.5assertEquals(someProperty.value,

c++ - 程序员思维过程 : determining a maximum number of bytes to read when using ReadFile with the Windows API

我需要调用WindowsAPI的ReadFile函数:BOOLWINAPIReadFile(_In_HANDLEhFile,_Out_LPVOIDlpBuffer,_In_DWORDnNumberOfBytesToRead,_Out_opt_LPDWORDlpNumberOfBytesRead,_Inout_opt_LPOVERLAPPEDlpOverlapped);我感兴趣的论点是第三个:nNumberOfBytesToRead[in]Themaximumnumberofbytestoberead.我对放在那里的“魔数(MagicNumber)”不太感兴趣,但是经验丰富的程序员确定放

windows - 设置排除参数时,xcopy 返回错误 "Invalid number of parameters"

发行:xcopyX:\"Y:\...\bin\9876543210\"/c/g/d/i/e/r/h/y按预期工作。然而:xcopyX:\"Y:\...\bin\9876543210\"/c/g/d/i/e/r/h/y/exclude:"Y:\...\exclude.txt"返回错误:Invalidnumberofparameters当路径名(包含空格)未用引号引起来时也会发生这种情况。然而,事实并非如此。路径(为便于阅读而编辑)都正确对应。语法(根据ProductDocumentation-Xcopy)也是正确的。操作系统是WindowsXPProfessionalx32SP3。为什么

c - Windows 的 rand_s 线程安全吗?

如题。怀疑是,但我找不到任何明确说明的地方。对于此属性,我不想依赖推测。 最佳答案 如果您使用multithreadedCRT版本,所有函数都是线程安全的,因为任何线程特定的信息都存储在TLS中。.rand_s实际上首先不使用状态信息,因为它只是调用操作系统API,因此rand_s不会出现线程安全问题。rand(),但是取决于种子值来生成随机数。 关于c-Windows的rand_s线程安全吗?,我们在StackOverflow上找到一个类似的问题: http