我正在研究一个 C++ 类,我们正在学习 MD5 散列函数。但是,我遇到了这个问题,我在其中执行以下操作:
string input = "testInput";
unsigned char *toHash = new unsigned char[input.size()+1];
strcpy( (char*)toHash, input.c_str() );
unsigned char output[MD5_DIGEST_LENGTH];
MD5(toHash, input.size(), output);
cout << hex << output << endl;
但我总是得到一些奇怪的垃圾字符,而不是我正在寻找的东西,比如一长串数字/字母。这是怎么回事?
~ 被低级 C++ 搞糊涂了