C语言之sprintf使用总结
1、问题
在open ssl 里面输出16进制的随机数
uint8_t *client = NULL;
client = ssl->s3->client_random
for (int i = 0; i < 32; i++)
{
printf("client_random is %02x\n", client[i]);
}
但是这样输出都是一个一个的打印,我需要连接在一起的字符串
2、解决办法
使用sprinf函数,基础太弱,一时想不起来,勿喷
uint8_t *client = NULL;
char result[256];
client = ssl->s3->client_random
for (int i = 0; i < 32; i++)
{
sprintf(result + 2*i, "%02x", client[i]);
printf("client_random is %02x", client[i]);
}
最后
printf("result is %s\n", result);
我一开始使用
std::string result = "";
for ( ...)
{
result += client[i];
}
傻逼了呀。
赞 (0)