c语言生成随机uuid编码示例
本文导语: c语言生成随机uuid编码 代码如下:#include #include /** * 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 ) { ...
c语言生成随机uuid编码
#include
#include
/**
* 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;
}