Go語言提供了對位的內置支持,以借助bits包對預聲明的無符號整數類型實現位計數和操作函數。該軟件包提供Add64()函數,該函數用於查找帶有a,b和進位的和,即sum = a + b +進位。這裏進位的值必須為0或1,否則行為是不確定的。要訪問Add64()函數,您需要借助import關鍵字在程序中添加一個math /bits包。
用法:
func Add64(a, b, carry uint64) (sum, carryout uint64)
參數:此函數采用uint64類型的三個參數,即a,b和進位。進位參數的值為1或0。
返回值:此函數返回兩個uint64類型的值,即sum和carryout。這裏sum包含a + b +進位的結果,且進位為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
相關用法
- Golang math.Lgamma()用法及代碼示例
- Golang math.Float64bits()用法及代碼示例
- Golang atomic.AddInt64()用法及代碼示例
- Golang atomic.StoreInt64()用法及代碼示例
- Golang reflect.FieldByIndex()用法及代碼示例
- Golang string.Contains用法及代碼示例
- Golang bits.Sub()用法及代碼示例
- Golang io.PipeWriter.CloseWithError()用法及代碼示例
- Golang time.Round()用法及代碼示例
- Golang reflect.AppendSlice()用法及代碼示例
- Golang reflect.ChanOf()用法及代碼示例
- Golang flag.Bool()用法及代碼示例
- Golang time.Sleep()用法及代碼示例
- Golang time.Time.Year()用法及代碼示例
- Golang reflect.DeepEqual()用法及代碼示例
- Golang reflect.Indirect()用法及代碼示例
- Golang reflect.CanAddr()用法及代碼示例
- Golang reflect.CanInterface()用法及代碼示例
- Golang reflect.CanSet()用法及代碼示例
- Golang reflect.Cap()用法及代碼示例
注:本文由純淨天空篩選整理自Kirti_Mangal大神的英文原創作品 bits.Add64() Function in Golang with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。