0


【C/C++类库】:uuid 通用唯一识别码

【SourceForge】libuuid下载
【CSDN】:libuuid下载安装
1、libuuid 下载安装

tar -xzvf libuuid-1.0.3.tar.gz
cd libuuid-1.0.3/./configure
make
sudo make install

2、uuid 函数详解
uuid_generate():
优先算法:若有一高质量随机数生成器【/dev/urandom】,UUID将基于其生成的随机数产生
备用算法:上述条件不满足时,若可取到MAC地址,则将用由伪随机数生成器产生的随机数、当前时间、MAC地址生成UUID

uuid_generate_random():
强制完全使用随机数,优先使用高质量随机数生成器【/dev/urandom】,备用伪随机数生成器,用后者uuid有重复风险

uuid_generate_time():
使用全局时钟、MAC地址,有MAC地址泄露风险
为保证唯一性还使用时间同步机制,若机制不可用,多台机器上生成的uuid可能会重复

uuid_generate_time_safe():
指明由uuid_generate_time生成的uuid是否使用了时间同步机制

uuid_unparse():
将uuid以36字节的字符串表示,字符串尾添’\0’,转换后的字符串共占37字节

uuid_unparse_upper()、uuid_unparse_lower():
转换成相应的大小写字符串
3、uuid 使用

/*libuuid是一个用于生成UUID的C库,具体用法参考http://linux.die.net/man/3/libuuid,示例如下:*/#include<stdio.h>#include<uuid/uuid.h>intmain(int argc,char** argv){
    uuid_t uuid;char str[36];uuid_generate(uuid);uuid_unparse(uuid, str);printf("%s\n", str);return0;}
标签:

本文转载自: https://blog.csdn.net/kai15058157346/article/details/116352354
版权归原作者 KAI-萧山 所有, 如有侵权,请联系我们删除。

“【C/C++类库】:uuid 通用唯一识别码”的评论:

还没有评论