首页 > 其他分享 >QT生成固定长度的随机字符串

QT生成固定长度的随机字符串

时间:2024-03-12 22:25:18浏览次数:22  
标签:ch chrs QT int length 随机 字符串

最近项目中有一个需要使用QT生成固定长度随机字符串的需求,需求也很简单,就是生成一个n位的仅包含0-9以及大写字母的字符串,因为这也是第一次使用QT自身的随机数,这里就做一下简单记录。

废话不多说,直接上代码。

 1 QString getRandomString(int length)
 2 {
 3     qsrand(QDateTime::currentMSecsSinceEpoch());//为随机值设定一个seed
 4     const char chrs[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
 5     int chrs_size = sizeof(chrs);
 6 
 7     char* ch = new char[length + 1];
 8     memset(ch, 0, length + 1);
 9     int randomx = 0;
10     for (int i = 0; i < length; ++i)
11     {
12         randomx= qrand() % (chrs_size - 1);
13         ch[i] = chrs[randomx];
14     }
15 
16     QString ret(ch);
17     delete[] ch;
18     return ret;
19 }
View Code

 这段代码逻辑也很简单,以当前的时间戳作为种子进行随机数发生器初始化,并设置要生成的字符串要包含的字符的字符集,然后在字符中随机取出特定个数的字符拼接起来即可。

 

标签:ch,chrs,QT,int,length,随机,字符串
From: https://www.cnblogs.com/Arthurian/p/18069032

相关文章

  • C语言以空格分割字符串
    方法一、使用<string.h>的strtok()函数原型:char*strtok(char*str1,constchar*str2);头文件:#include<string.h>功能:用指定的分隔符分解字符串参数: char*str1 为要分解的字符串constchar*str2 为分隔符字符串返回值: 返回下一个分割后的(位于最开始的)字......
  • 【Azure Power BI】Power BI获取SharePoint List列表后,如何展开List/Table中的字段,以
    问题描述PowerBI获取SharePointList列表作为数据源。但是在数据源中,有Table属性值,有List属性值。如果直接展开,则会形成“笛卡尔”集的效果,变成N多行数据。效果图如下:但是,我们最终所需要的效果是:保留整体表格的行数不变,把Table中所需要的字段,List中的值使用“逗号”分隔,展示......
  • 基于QT实现的微量气体数据记录软件
      最近收到一个要求实现力高泰的微量气体分析仪数据下载与记录软件的需求。需要支持力高泰LI-7810、LI-78150、LI-7820、LI-850/830等微量气体分析仪,另外还包括配套的阀箱、冷阱及采样单元的数据获取与记录。其中LI-7810、LI-78150、LI-7820采用以太网通讯,应用成蓄意为MQTT;LI-85......
  • 438. 找到字符串中所有字母异位词c
    /***Note:Thereturnedarraymustbemalloced,assumecallercallsfree().*/intchange(charc){returnc-'a';}booljudge(char*s,inthead,inttail,intn,int*tempp,int*temps){if(tail>=n)returnfalse;for(inti=head;i&......
  • R语言CART决策树、随机森林、chaid树预测母婴电商平台用户寿命、流失可视化
    全文链接:http://tecdat.cn/?p=31644原文出处:拓端数据部落公众号借着二胎政策的开放与家庭消费升级的东风,母婴市场迎来了生机盎然的春天,尤其是母婴电商行业,近年来发展迅猛。用户获取和流失是一对相对概念,就好比一个水池,有进口,也有出口。我们不能只关心进口的进水速率,却忽略了出水......
  • R语言逻辑回归、决策树、随机森林、神经网络预测患者心脏病数据混淆矩阵可视化
    全文链接:https://tecdat.cn/?p=33760原文出处:拓端数据部落公众号概述:众所周知,心脏疾病是目前全球最主要的死因。开发一个能够预测患者心脏疾病存在的计算系统将显著降低死亡率并大幅降低医疗保健成本。机器学习在全球许多领域中被广泛应用,尤其在医疗行业中越来越受欢迎。机器......
  • Qt QByteArray与int、float、vector互转
    QByteArray的转换一般在串口通信中常用,将int、float、double转换为4个字节的数组(如255->[0,0,0,255],本文章一律用10进制表示),或将4个字节的数组转换为int、float、double(如[0,0,0,255]->255)。在QT界面中的使用流程,笔者总结为以下思路:从上位机发送一帧指令到串口(封包、根据具体......
  • C++ 字符串和字符操作
    1.头文件#inlcude<string>2.std::string&char*区别char*是一个指针string是一个类,内部封装了char,是一个char管理容器3.std::string&C-style字符串区别std::string是C++标准库中的字符串类,提供了许多字符串操作的方法和功能,包括长度计算、拼接、查找、替换等......
  • Qt QTextEdit添加文字的方式
    1.append 添加方式,在文本内容后面添加新的文本内容2.insertText添加方式,可以在textEdit的任何方式添加文本效果和代码1#include"widget.h"2#include"ui_widget.h"3#include<QPalette>4#include<QBrush>5#include<QFont>6#include<QTextCursor&......
  • 给定字符串,输出符合要求的子串
    给定字符串,输出出现次数>3的字符串。实例:输入:"kouredgameredokwhogameredkaraokeyukarikouredrednanikoucankoukouongakugamegame"输出:redgamekou代码:importoperatorinput_str="kouredgameredokwhogameredkaraokeyukarikouredredn......