主页 > 知识库 > golang指数运算操作

golang指数运算操作

热门标签:官渡电销外呼管理系统怎么收费 400开头电话怎样申请 贵州电话智能外呼系统 利用地图标注位置 地图区域图标注后导出 赤峰电销 杭州人工智能电销机器人费用 谷歌美发店地图标注 江苏呼叫中心外呼系统有效果吗

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

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,指数,运算,操作,golang,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《golang指数运算操作》相关的同类信息!
  • 本页收集关于golang指数运算操作的相关信息资讯供网民参考!
  • 推荐文章