Golang bits.Add64() 函数及示例
Go 语言提供了对位操作的内置支持,借助 bits 包实现预定义无符号整数类型的位计数和操作函数。该包提供了 Add64() 函数 ,用于计算 a、b 和进位的和,即 sum = a + b + carry,其中 carry 的值必须为 0 或 1,否则行为未定义。要访问 Add64() 函数,您需要利用 import 关键字添加 math/bits 包到您的程序中。
语法:
func Add64(a, b, carry uint64) (sum, carryout uint64)
参数: 此函数接受三个 uint64 类型的参数,即 a、b 和 carry。 carry 参数的值是 1 或 0。
返回值: 此函数返回两个 uint64 类型的值,即 sum 和 carryout。其中,sum 包含 a + b + carry 的结果,carryout 的值是 1 或 0。
示例 1:
// Golang program to illustrate bits.Add64() Function
package main
import (
"fmt"
"math/bits"
)
// Main function
func main() {
// Finding sum and carry
// of the specified numbers
// Using Add64() function
nvalue_1, carry := bits.Add64(23, 34, 1)
fmt.Println("Sum:", nvalue_1)
fmt.Println("Carry:", carry)
}
输出:
Sum: 58
Carry: 0
示例 2:
// Golang program to illustrate bits.Add64() Function
package main
import (
"fmt"
"math/bits"
)
// Main function
func main() {
// Finding sum and carry
// of the specified numbers
// Using Add64() function
var a, b, carry uint64 = 34, 56, 0
sum, carryout := bits.Add64(a, b, carry)
fmt.Println("Number 1:", a)
fmt.Println("Number 2:", b)
fmt.Println("Carry:", carry)
fmt.Println("Sum:", sum)
fmt.Println("Carry:", carryout)
}
输出:
Number 1: 34
Number 2: 56
Carry: 0
Sum: 90
Carry: 0
极客教程