C++ GUID和string转化函数【转载】

 

原文地址:https://blog.csdn.net/zgl7903/article/details/5488294

因为这两个函数太好用,解决了大问题,我必须转载一下了。转自csdn牛人

zgl7903的专栏

 

    BOOL LPCTSR2GUID(LPCTSTR szGUID, GUID &Guid) {
        memset(&Guid, 0, sizeof(Guid));
        int nRet =
            _stscanf(szGUID,
                _T("%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 (nRet == 11) ? TRUE : FALSE;
    }


    LPCTSTR GUID2LPCTS(GUID Guid) {
        static TCHAR szBuf[65] = { 0 };
        _sntprintf(szBuf, 64, _T("%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 szBuf;
    }

 

注意VS2017环境下头文件需要引用#include <TCHAR.H>

 

 

posted on 2018-05-23 12:25  J·Marcus  阅读(649)  评论(0编辑  收藏  举报

导航