C++:在程序中獲取全球唯一標識號(GUID或UUID)


Windows:使用CoCreateGuid函數(GUID)

  1. #include <objbase.h>  
  2. #include <stdio.h>  
  3.   
  4. #define GUID_LEN 64  
  5.   
  6. int main(int argc, char* argv[])  
  7. {  
  8.     char buffer[GUID_LEN] = { 0 };  
  9.     GUID guid;  
  10.   
  11.     if ( CoCreateGuid(&guid) )  
  12.     {  
  13.         fprintf(stderr, "create guid error\n");  
  14.         return -1;  
  15.     }  
  16.     _snprintf(buffer, sizeof(buffer),   
  17.         "%08X-%04X-%04x-%02X%02X-%02X%02X%02X%02X%02X%02X",   
  18.         guid.Data1, guid.Data2, guid.Data3,   
  19.         guid.Data4[0], guid.Data4[1], guid.Data4[2],   
  20.         guid.Data4[3], guid.Data4[4], guid.Data4[5],   
  21.         guid.Data4[6], guid.Data4[7]);  
  22.     printf("guid: %s\n", buffer);  
  23.   
  24.     return 0;  
  25. }  

 

 

Linux:使用uuid_generate函數(UUID)

    1. //編譯命令:gcc atemp.c -o atemp -luuid  
    2. #include <stdio.h>  
    3. #include <uuid/uuid.h>  
    4.   
    5. int main()   
    6. {   
    7.     uuid_t uu;  
    8.     int i;  
    9.     uuid_generate( uu );   
    10.   
    11.     for(i=0;i<16;i++)   
    12.     {   
    13.         printf("%02X-",uu[i]);   
    14.     }   
    15.     printf("\n");   
    16.   
    17.     return 0;   
    18. }   


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM