1

我正在尝试对数组 [0..63, uint8] 执行 md5Update 但我得到了

Error: type mismatch: got (MD5Context, array[0..63, uint8], int)
but expected one of: 
md5.md5Update(c: var MD5Context, input: cstring, len: int)

似乎它想要一个 cstring 输入而不是一个缓冲区。那么如何对二进制数据执行 md5Update() 呢?(我不希望最后有一个空字符......)

4

1 回答 1

1

您可以将缓冲区转换为cstringwith cast[cstring](addr myBuf)。请注意,您还必须传递 a var MD5Context,这意味着它必须是可变的(在 a 中定义var或作为var参数传递)。

于 2015-07-14T08:18:06.277 回答