首页 > 编程语言 > 详细

ubuntu下C语言生成UUID方法二

时间:2021-05-02 22:10:12      阅读:44      评论:0      收藏:0      [点我收藏+]
/********方法一**********/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/**
 * Create random UUID
 *
 * @param buf - buffer to be filled with the uuid string
 */
char *random_uuid( char buf[37] )
{
    const char *c = "89ab";
    char *p = buf;
    int n;
    for( n = 0; n < 16; ++n )
    {
        int b = rand()%255;
        switch( n )
        {
            case 6:
                sprintf(p, "4%x", b%15 );
                break;
            case 8:
                sprintf(p, "%c%x", c[rand()%strlen(c)], b%15 );
                break;
            default:
                sprintf(p, "%02x", b);
                break;
        }

        p += 2;
        switch( n )
        {
            case 3:
            case 5:
            case 7:
            case 9:
                *p++ = -;
                break;
        }
    }
    *p = 0;
    return buf;
}

void main()
{
    char guid[37];
    random_uuid(guid);
    printf("guid = %s\n", guid);
    random_uuid(guid);
    printf("guid = %s\n", guid);
    random_uuid(guid);
    printf("guid = %s\n", guid);
    random_uuid(guid);
    printf("guid = %s\n", guid);
}

截图如下:

技术分享图片

reference:https://www.cnblogs.com/Daniel-G/p/3987320.html

ubuntu下C语言生成UUID方法二

原文:https://www.cnblogs.com/nanfengnan/p/14726060.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!