erlang 二进制
在网络编程中,我们面对的不再是字符串,而是字节流,对于这些信息的处理,erlang提供了比特语法这样的工具。
- Erlang代码
- Eshell V5.8.4 (abort with ^G)
- 1> X = "hello".
- Erlang代码
- 2> BinX = list_to_binary("hello").
- <<"hello">>
- Erlang代码
- 3> binary_to_list(BinX).
- "hello"
- Erlang代码
- 4> <<First:8,Body:24,Last:8>> = BinX.
- <<"hello">>
- 5> First.
- 104
- 6> Body.
- 6646892
- 7> Last.
- 111
- Erlang代码
- 8> binary_to_list(First).
- ** exception error: bad argument
- in function binary_to_list/1
- called as binary_to_list(104)
- Erlang代码
- 9> binary_to_list(<<First>>).
- "h"
- Erlang代码
- 10> <<First2:1/binary,Body2:3/binary,Last2:1/binary>> = BinX.
- <<"hello">>
- 11> binary_to_list(First2).
- "h"
- 12> binary_to_list(Body2).
- "ell"
- 13> binary_to_list(Last2).
- "o"
- Erlang代码
- 14> <<First3:8,Body3:24,Last3>> = BinX.
- <<"hello">>
- Erlang代码
- 15> <<First4:8, Body4:16, Last3:8>> = BinX.
- ** exception error: no match of right hand side value <<"hello">>
- 完整的比特语法:
- <<>> %%表示一个空的二进制数据
- <<E1,E2,...,En>>
- 这里每一个 Ei 表示一个二进制数据区块。区块可能的形式有四种:
- Ei = Value |
- Value:Size |
- Value/TypeSpecifierList |
- Value:Size/TypeSpecifierList
转载于:https://blog.51cto.com/ma3yi/857950
erlang 二进制相关推荐
- [Erlang 0014]Erlang垃圾回收机制
前面的Erlang杂记中我们简单提到过Erlang的垃圾回收机制:1.以进程为单位进行垃圾回收 2.ETS和原子不参与垃圾回收.今天我们继续这一话题,关注更多关于细节. 在Erlang的官方文档中,关 ...
- ERLANG日期与时间
在开发过程中,有两个概念是和地区区域相关的:字符编码和时间;编码和时间的规范演变过程中有文化的冲突有历史的遗留,是软件开发中充满人文气息的一角;关于字符编码我之前整理过一篇文章, [Erlang 00 ...
- [Erlang]Erlang与C的节点通信
Erlang节点之间的通讯,主要用于两个Erlang节点之间的通讯,但Erlang还支持与java构建的节点通讯,甚至与c构建的节点通讯,前面两种方式在我以前的文章都有讲到,所以这里讲Erlang与c ...
- Erlang与C构建的节点通讯
Erlang节点之间的通讯,主要用于两个Erlang节点之间的通讯,但Erlang还支持与java构建的节点通讯,甚至与c构建的节点通讯,前面两种方式在我以前的文章都有讲到,所以这里讲Erlang与c ...
- [Erlang]如何使用NIF
在Erlang中,NIF(Native Implemented Function)被用来扩展erlang的某些功能,一般用来实现一些erlang很难实现的,或者一些erlang实现效率不高的功能. N ...
- Windows下使用NIF扩展Erlang方法
在Erlang中,NIF(Native Implemented Function)被用来扩展erlang的某些功能,一般用来实现一些erlang很难实现的,或者一些erlang实现效率不高的功能. N ...
- ERLANG unicode8
不少人和我一样在Erlang实践过程中都会遇到中文的问题,其中有中文显示的问题有正则表达式匹配的问题等等;今天请教立涛之后梳理了一下,整理于此. 概念Unicode UTF-8 <深入理解计算机 ...
- Erlang 位串和二进制数据
http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=25876834&id=3300393 因为在本人工作中,服务端Erla ...
- 二进制数据格式MessagePack:比JSON更快更轻巧
2019独角兽企业重金招聘Python工程师标准>>> MessagePack是一种新的基于二进制的对象序列化类库.它可以像JSON那样,在许多种语言之间交换结构对象(比如移动app ...
最新文章
- 文本主题模型之非负矩阵分解(NMF)
- mysql保留2位小数字段如何设置 浮点数
- linux程序获取透传参数,Linux内核中TCP SACK处理流程分析
- WKQ学习(后台知识)
- DM6467之视频采集(Linux)下MMAP
- modbus-crc16——c语言
- 树莓派3代刷ubuntu mate在命令行下配置wifi不能连接的一个诡异的bug的解决
- 浅析JavaScript和PHP中三个等号(===)和两个等号(==)的区别
- 中河广播服务器怎么连接无线话筒,无线话筒怎么连接音响 话筒连接音响方法...
- Anaconda安装apscheduler库的步骤
- 实验3 OpenGL几何变换
- 领导力、愚狂和改变:爱因斯坦是否错了?
- 虚拟机管理解决方案逐个看:微软篇
- java用poi实现对word读取和修改操作
- V4L2抓取USB摄像头YUV视频数据代码
- 虚拟机搭建Windows2003步骤详解
- Mac在线网页版打字推荐
- 传感器实验——光敏电阻传感器
- maven多模块编译子包
- Vmware安装win10报错:operating system not found
热门文章
- 联通、华为《5G室内覆盖》白皮书!
- AI 热潮之下,初创企业能否躲过科技巨头的碾压?
- 甲方乙方和站在外包中间的你 | 每日趣闻
- “我在苹果商店下载了一个诈骗 App,损失 60 万美金!”
- 大写的服!90 后程序员利用业余时间帮网友鉴定毒蘑菇,拥有百万粉丝成网络大 V...
- TIOBE 12 月编程语言:Python 有望第四次成为年度语言!
- 2020携程“BOSS直播”大数据发布:GMV累计超11亿
- lambda函数详解
- Android应用打开外部文件
- 爱立信前CEO Hans Vestberg成为Verizon三巨头之一