C++ Random庫(kù)怎樣生成隨機(jī)字符串

c++
小樊
126
2024-07-21 03:14:56

要在C++中生成隨機(jī)字符串,可以使用隨機(jī)數(shù)生成器和字符串操作函數(shù)來(lái)實(shí)現(xiàn)。以下是一個(gè)示例代碼,可以生成指定長(zhǎng)度的隨機(jī)字符串:

#include <iostream>
#include <string>
#include <random>

std::string generateRandomString(int length) {
    std::string characters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    std::string randomString;

    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_int_distribution<> dis(0, characters.size() - 1);

    for (int i = 0; i < length; i++) {
        randomString += characters[dis(gen)];
    }

    return randomString;
}

int main() {
    int length = 10;
    std::string randomString = generateRandomString(length);

    std::cout << "Random string: " << randomString << std::endl;

    return 0;
}

在上面的代碼中,generateRandomString函數(shù)用于生成隨機(jī)字符串,其中characters存儲(chǔ)了可以使用的字符集,rd用于生成隨機(jī)種子,gendis用于生成隨機(jī)數(shù)。在main函數(shù)中,可以調(diào)用generateRandomString函數(shù)并傳入所需的字符串長(zhǎng)度來(lái)生成隨機(jī)字符串并輸出。

0