• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    golang指数运算操作

    我就废话不多说了,大家还是直接看代码吧~

    func main() {
     fmt.Println(exponent (5,3))
    }
    //a的n次方
    //超出uint64的部分会丢失
    func exponent (a,n uint64) uint64 {
     result := uint64(1)
     for i := n ; i > 0; i >>= 1 {
     if i1 != 0 {
     result *= a
     }
     a *= a
     }
     return result
    }
    

    补充:Golang 位运算之 ^

    看Golang源代码,突然看到一个 a ^ b的位操作,有点懵,在通过不断的写测试验证,终于弄清楚了是怎么回事,在这里记录一下,避免忘记。

    在弄清楚a ^ b是怎么回事之前,我们先看一个我们熟悉的 a += b:

    a += b ==> a = a + b

    其实^也是一样:

    a ^ b ==> a ^ (a b)

    只是把 = 换成了 ^ 。

    还有更复杂一点的,但万变不离其宗,如 a ^= b:

    a ^= b,分两步分解:

    ==> a = a ^ b

    ==> a = a ^ (a b)

    在Golang里面对于这种表达式都可以套用+=这种我们熟悉的,复杂一点的就按步骤分解。

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    您可能感兴趣的文章:
    • Golang如何交叉编译各个平台的二进制文件详解
    • Golang 运算符及位运算详解
    • golang切片反序实例
    • golang 实现interface{}转其他类型操作
    • golang 实现tcp server端和client端,并计算RTT时间操作
    • golang 获取当前执行程序路径的操作
    • golang HTTP 服务器 处理 日志/Stream流的操作
    • 浅谈golang二进制bit位的常用操作
    上一篇:golang切片反序实例
    下一篇:Golang 运算符及位运算详解
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    golang指数运算操作 golang,指数,运算,操作,golang,