binary - Elixir:如何获取整数变量的 bit_size?
问题描述
我需要获取一个整数变量中使用的位大小。
像这样:
bit_number = 1
bit_number = bit_number <<< 2
bit_size(bit_number) # must return 3 here
该bit_size/1
函数用于“字符串”,而不是整数,但在练习中,需要获取整数位的大小。
我正在做一本书的压缩练习(Daivid Kopec 的 Python 中的经典计算机科学问题),我正在尝试在 Elixir 中进行学习。
解决方案
这有效:
(iex) import Bitwise
(iex) Integer.digits(1 <<< 1, 2) |> length
2
但我确信有更好的解决方案。
(正如@Hauleth 提到的,这里的答案应该是 2,而不是 3)
推荐阅读
- android - RazorpayFlutterPlugin 类中的 RazorpayFlutterPlugin 不能应用于给定类型;
- javascript - 在函数中使用更新状态
- arrays - 更新中数组中位置元素的参考值
- node.js - 如何自定义/覆盖strapi组件
- sql - 如何使用 hive 将表中的列值转换为行值
- angular - Angular 应用程序组件动画不起作用
- android - Firebase 实时数据库:监听具有特定值的更改
- android - 将图片从手机上传到 RecyclerView GridView
- python - 如何提高 csv 读写器脚本的性能?
- sql - 根据模式分配唯一行号