如何使用openssl进行64进制解码? 我用BooS.asIO开发C++。我希望能够对数据进行base64解码,因为Boost.Asio链接到openssl,所以我希望使用它的函数来实现这一点,而不是添加额外的依赖项(例如crypto++)。我发现了这个代码,它展示了如何做到这一点。(将int finalLen=BIO_read(bmem,(void*)pOut,outLen)更改为inLen)

如何使用openssl进行64进制解码? 我用BooS.asIO开发C++。我希望能够对数据进行base64解码,因为Boost.Asio链接到openssl,所以我希望使用它的函数来实现这一点,而不是添加额外的依赖项(例如crypto++)。我发现了这个代码,它展示了如何做到这一点。(将int finalLen=BIO_read(bmem,(void*)pOut,outLen)更改为inLen),c++,c,openssl,base64,decode,C++,C,Openssl,Base64,Decode,我不知道它是否有效。我只是将一些测试数据传递给它,我用这里找到的在线解码器验证(2)(选择安全解码为文本并计算符号)。我使用的测试字符串是:“aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa。在线解码器和快速crypto++实现都返回23个字符。但

我不知道它是否有效。我只是将一些测试数据传递给它,我用这里找到的在线解码器验证(2)(选择安全解码为文本并计算符号)。我使用的测试字符串是:“aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa。在线解码器和快速crypto++实现都返回23个字符。但是我上面提到的使用openssl的代码返回0。我做错什么了吗?openssl是否适合base64解码?
请为我提供一个解决方案(如果存在)。谢谢你抽出时间来。

pff对不起,我弄错了。我忘了为撅嘴分配内存。代码现在似乎起作用了