首页 > 后端开发 > C++ > 正文

如何在 C 中生成随机字母数字字符串?

Barbara Streisand
发布: 2024-11-18 19:15:02
原创
838 人浏览过

How to Generate Random Alphanumeric Strings in C  ?

在 C 中创建随机字母数字字符串

问题:

生成随机字符串C 中具有用户指定长度的字母数字字符.

解决方案:

使用查找表高效生成随机字母数字字符串:

#include <ctime>
#include <iostream>
#include <unistd.h>

std::string gen_random(const int len) {
    static const char alphanum[] =
        "0123456789"
        "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
        "abcdefghijklmnopqrstuvwxyz";
    std::string tmp_s;
    tmp_s.reserve(len);

    for (int i = 0; i < len; ++i) {
        tmp_s += alphanum[rand() % (sizeof(alphanum) - 1)];
    }

    return tmp_s;
}

int main(int argc, char *argv[]) {
    srand((unsigned)time(NULL) * getpid());     
    std::cout << gen_random(12) << "\n";        
    return 0;
}
登录后复制

注意:

  • rand 生成低质量的随机数,因此使用更好的随机数生成器来实现更安全的应用程序。

以上是如何在 C 中生成随机字母数字字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板