我是Golang的新手,我的问题是:
我有两个64字节的字节数组,让它们命名为#34; A"和" B"。每个数组都代表一个无符号整数。
我希望生成另一个64字节的数组" R"代表(A / B)的结果。
有什么想法吗?
// pre-condition: A and B have 64 bytes each
// A and B each represent an unsigned integer
// R = (A / B)
func divideByteArrays(A, B []byte) []byte {
R := make([]byte, 64)
// ... do something ...
return R
}
提前致谢!
编辑:
可以使用" math / big"实现这一目标?
答案 0 :(得分:4)
https://play.golang.org/p/T5R8fB8q60
package main
import (
"math/big"
"fmt"
)
func divideByteArrays(A, B []byte) []byte {
var AI, BI, R big.Int
AI.SetBytes(A)
BI.SetBytes(B)
R.Div(&AI, &BI)
return R.Bytes()
}
func main() {
a_array := make([]byte, 64)
b_array := make([]byte, 64)
for i := 0; i < 64; i++ {
a_array[i] = 4
b_array[i] = 2
}
fmt.Println(divideByteArrays(a_array, b_array))
}