我想使用 生成一个随机数或字符串C 预处理器......嗯......我什至不知道这是否可能,但我正在尝试动态创建变量(字符串在这里会有所帮助)并为其分配值(整数)。所以我正在尝试做一些事情,但基本问题仍然存在 - 我可以使用预处理器创建一个随机字符串或数字吗?
最佳答案
基于 1999-01-15 Jeff Stout(感谢@rlb.usa)
#define UL unsigned long
#define znew ((z=36969*(z&65535)+(z>>16))<<16)
#define wnew ((w=18000*(w&65535)+(w>>16))&65535)
#define MWC (znew+wnew)
#define SHR3 (jsr=(jsr=(jsr=jsr^(jsr<<17))^(jsr>>13))^(jsr<<5))
#define CONG (jcong=69069*jcong+1234567)
#define KISS ((MWC^CONG)+SHR3)
/* Global static variables:
(the seed changes on every minute) */
static UL z=362436069*(int)__TIMESTAMP__, w=521288629*(int)__TIMESTAMP__, \
jsr=123456789*(int)__TIMESTAMP__, jcong=380116160*(int)__TIMESTAMP__;
int main(int argc, _TCHAR* argv[]){
cout<<KISS<<endl;
cout<<KISS<<endl;
cout<<KISS<<endl;
}
输出:
247524236
3009541994
1129205949
关于random - 使用 C 预处理器生成随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5355317/