У меня есть этот код, который правильно показывает мне md5 строки. Я предпочитаю возвращать строку в функцию, но у меня проблемы с преобразованием значений md5 в мою строку. {{ 1}} Это код:
string calculatemd5(string msg)
{
string result;
const char* test = msg.c_str();
int i;
MD5_CTX md5;
MD5_Init (&md5);
MD5_Update (&md5, (const unsigned char *) test, msg.length());
unsigned char buffer_md5[16];
MD5_Final ( buffer_md5, &md5);
printf("Input: %s", test);
printf("\nMD5: ");
for (i=0;i<16;i++){
printf ("%02x", buffer_md5[i]);
result[i]=buffer_md5[i];
}
std::cout <<"\nResult:"<< result[i]<<endl;
return result;
}
Например, result [i]
- это странный символ ascii вроде этого: .
Как можно решить эту проблему?