随机密码生成器
环境:DEV-C++
代码
源码及可执行文件:password_generator
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
//随机密码生成器,直接将密码复制到剪切板
//int num = rand() % n + a;
//a是起始值,n-1+a是终止值,n是整数的范围
//将内容写道剪切板的函数
int write_clipboard(char *strText)
{
// 打开剪贴板
if (!OpenClipboard(NULL)|| !EmptyClipboard())
{
printf("打开或清空剪切板出错!\n");
return -1;
}
HGLOBAL hMen;
// 分配全局内存
hMen = GlobalAlloc(GMEM_MOVEABLE, ((strlen(strText)+1)*sizeof(TCHAR)));
if (!hMen)
{
printf("分配全局内存出错!\n");
// 关闭剪切板
CloseClipboard();
return -1;
}
// 把数据拷贝考全局内存中
// 锁住内存区
LPSTR lpStr = (LPSTR)GlobalLock(hMen);
// 内存复制
memcpy(lpStr, strText, ((strlen(strText))*sizeof(TCHAR)));
// 字符结束符
lpStr[strlen(strText)] = (TCHAR)0;
// 释放锁
GlobalUnlock(hMen);
// 把内存中的数据放到剪切板上
SetClipboardData(CF_TEXT, hMen);
CloseClipboard();
return 0;
}
int main(void){
//确保每次生成的随机数不同
srand((unsigned)time(NULL));
//密码的长度为随机12-24位
int length = rand()%13+12;
char password[length];
//循环生成密码
for(int i=0; i<length; i++){
//密码的取值为随机ascii码的48-126
password[i] = rand()%79+48;
}
//输出密码到剪切板
write_clipboard(password);
return 0;
}
THE END
0
二维码
海报
随机密码生成器
环境:DEV-C++
代码
源码及可执行文件:password_generator
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <w……
共有 0 条评论