C++随机数字以及随机数字加字母生成的方法-创新互联
这篇文章主要介绍C++随机数字以及随机数字加字母生成的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
为大足等地区用户提供了全套网页设计制作服务,及大足网站建设行业解决方案。主营业务为成都网站建设、成都网站设计、大足网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!#include#include 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#include #include #include 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#include #include #include 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; }
以上是“C++随机数字以及随机数字加字母生成的方法”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!
本文名称:C++随机数字以及随机数字加字母生成的方法-创新互联
URL标题:http://ybzwz.com/article/ppccc.html