C++输出随机字符

先加载库:string.h、Windows.h、iostream

另外还必须加using namespase std;

接着,我们创建一个string类型字符串

;写入自定义字母:string ranstr = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890"

之后重新定义一个空字符串:string str = "";

然后用for指令:

for(int i = 0;i<输出字符串长度;i++){

str = str + ranstr[rand() % 62];

//62是ranstr的长度

}

最后打印字符串

printf(str.c_str());//用c_str是转换string用的,printf的参数是const char类型

看最终代码

#include<Windows.h>

#include<iostream>

#include<stdlib.h>

#include<string.h>

using namespace std;

string ranstr = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890";

string str = "";

int main() {

    for (int i = 0; i < 1000; i++) {

        str = str + ranstr[rand() % 62];

    }

    printf(str.c_str());

}

如果不随机的话可以用彩虹猫的random函数:

HCRYPTPROV prov;
int random() {
    if (prov == NULL)
        if (!CryptAcquireContext(&prov, NULL, NULL, PROV_RSA_FULL, CRYPT_SILENT | CRYPT_VERIFYCONTEXT))
            ExitProcess(1);

    int out;
    CryptGenRandom(prov, sizeof(out), (BYTE*)(&out));
    return out & 0x7fffffff;
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值