随机码的生成

来源:互联网 发布:金额分摊除不尽 算法 编辑:程序博客网 时间:2024/05/16 23:33

最近要用到随机码来做唯一标识,所以学习了下


定义函数

const char* newGUID();


实现函数

const char* newGUID()
{
GUID guid;                                              //定义GUID变量,到时候生成随机窜
char szGUDI[64] = {0};                          //定义字符数组,到时候把随机窜存到字符数组
if (S_OK == ::CoCreateGuid(&guid))//如果创建成功,就打印到字符串szGUID中,且按照预设的格式
{
sprintf(szGUDI, "%08X%04X%04x%02X%02X%02X%02X%02X%02X%02X%02X", 
guid.Data1, guid.Data2, guid.Data3,
guid.Data4[0], guid.Data4[1], guid.Data4[2], 
guid.Data4[3], guid.Data4[4], guid.Data4[5], 
guid.Data4[6], guid.Data4[7]);
}
return (const char*)szGUDI;            //将存有随机码的数组转为常字符指针 
}


使用函数

在某个函数中,要使用随机码的时候调,(即赋值)

eg:某个结构体变量cwItem,其成员m_szItemID要用随机码来赋值,则

strcpy(cwItem->m_szItemID, newGUID()) ; 


原创粉丝点击