时间:2021-05-20
我就废话不多说了,大家还是直接看代码吧~
#include <time.h>#include <sys/timeb.h>void MainWindow::slot_clicked(){QString strRand;int length = 32;QString strTmp = "1234567890QWERTYUIOPASDFGHJKLZXCVBNM";struct timeb timer;ftime(&timer);srand(timer.time * 1000 + timer.millitm);//毫秒种子for(int i = 0; i < length; i++ ){int j = rand()%35;strRand += strTmp.at(j);}qDebug() << strRand;补充知识:C/C++生成随机数字符串(错误方法和正确方法)
先说错误的方法。生成的10个随机数是一样的。
#include <stdio.h>#include <time.h>#include <stdlib.h>#include <string.h> void make_rand_str(char *pchStr,int iLen){ time_t tCurTime = 0; int iRandValue = 0; int i = 0; unsigned int state = 0; if(NULL == pchStr || iLen <= 0) { return; } tCurTime = time(NULL); printf("\n***%ld***%u**\n",tCurTime ,(unsigned int)tCurTime); srand((unsigned int)tCurTime); iRandValue = rand(); snprintf(pchStr,iLen,"%d",iRandValue); printf("\n====%s====\n",pchStr); return; } int main(){ char str[20]; int i = 0; for(i = 0; i < 10; i++) { memset(str,0,sizeof(str)); make_rand_str(str,sizeof(str)); // printf("\n====%s====\n",str); } return 0; }正确的方法,生成了10个不一样的随机数
#include <stdio.h>#include <time.h>#include <stdlib.h>#include <string.h> void make_rand_str(char *pchStr,int iLen,int num){ time_t tCurTime = 0; int iRandValue = 0; int i = 0; unsigned int state = 0; if(NULL == pchStr || iLen <= 0) { return; } tCurTime = time(NULL); printf("\n***%ld***%u**\n",tCurTime ,(unsigned int)tCurTime); srand((unsigned int)tCurTime); for(i = 0;i < num; i++) { iRandValue = rand(); snprintf(pchStr,iLen,"%d",iRandValue); printf("\n====%s====\n",pchStr); } return;} int main(){ char str[20]; memset(str,0,sizeof(str)); make_rand_str(str,sizeof(str),10); // 10个随机数 // printf("\n====%s====\n",str); return 0; }以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方欢迎留言讨论,望不吝赐教。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1,生成随机数用for循环确定生成几个随机数。用随机函数生成范围内随机数。例如rand(1,15),生成1到15之间的数字。用16位进制函数把生成数字字母化。d
目录生成随机数字生成0到1之间的随机数生成指定范围内的随机数生成6位数字手机验证码生成标准正态分布随机数生成随机字符串生成固定长度的随机字符串生成可变长度的随机
目录生成随机数字生成0到1之间的随机数生成指定范围内的随机数生成6位数字手机验证码生成遵循正态分布的随机数生成随机字符串生成固定长度的随机字符串生成可变长度的随
C++生成不重复的随机数,供大家参考,具体内容如下给定正整数的范围[n,m],生成k个不重复的随机数字。IDE是vs013。#include"stdafx.h"
数字实际上不是随机的没有一台计算机能纯粹通过计算产生真正的随机数。它们能做的最好的事情就是生成伪随机数,伪随机数是一组看起来随机但实际上不是随机的数字。对于人类