我试图使我的程序每次编译时都有不同的窗口标题。
void rndmTitle() {
int num;
int length = 15;
std::string characters = "abcdefghi9182345jklmnopqrstuv211935960473wxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
for (int j = 0; j < length; j++)
{
num = rand() % 80 + 1;
}
SetConsoleTitle(characters[val.num]);
}
我从一段时间前制作的密码生成器中获得了该代码。 但是,它并不像我想的那样起作用。
应该从“字符串字符”中的81个字符中随机抽取字母/数字,然后将其设置为窗口标题。
但是,如果我尝试设置控制台标题,它只会告诉我“ char”类型的参数与“ LPCSTR”类型的参数不兼容。
答案 0 :(得分:1)
您的标题创建应类似于:
void rndmTitle(){
constexpr int length = 15;
const auto characters = TEXT("abcdefghi9182345jklmnopqrstuv211935960473wxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890");
TCHAR title[length + 1]{};
for (int j = 0; j != length; j++)
{
title[j] += characters[rand() % 80];
}
SetConsoleTitle(title);
}