日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

生成GUID

發(fā)布時間:2025/7/14 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 生成GUID 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

GUID的結(jié)構(gòu):

typedef struct _GUID { unsigned long Data1; unsigned short Data2; unsigned short Data3; unsigned char Data4[ 8 ]; } GUID;

總大小為:4 + 2 + 2 + 8 = 16字節(jié)。

一個GUID內(nèi)容形式為:{77046E66-C274-42CE-85AD-5DCFA5B4D2A5}

就是4+2+2+2+6 = 16字節(jié)。

“85AD” 是 Data4[0]和Data4[1];

“5DCFA5B4D2A5” 則是從 Data4[2]~Data4[7]。

?

需要包含頭文件objbase.h

主要就是函數(shù)

HRESULT CoCreateGuid( GUID * pguid );

示例:

#include "stdafx.h" #include "objbase.h" #include <string> using namespace std; std::string GuidToString(const GUID &guid) { char buf[64] = {0}; sprintf_s(buf,sizeof(buf),"{%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 std::string(buf); } int _tmain(int argc, _TCHAR* argv[]) { GUID guid; CoCreateGuid(&guid); std::string s = GuidToString(guid); printf(s.c_str()); system("pause"); return 0; }

運行結(jié)果:

轉(zhuǎn)載于:https://www.cnblogs.com/betterwgo/p/8434337.html

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的生成GUID的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。